- 博客(11)
- 收藏
- 关注
原创 PAT乙级2021秋季复盘
【2021.9.11】PAT乙级秋季60分题解 前言 1、这次比赛总体感觉不难,因为此次比赛是本人第一次参加线上赛,经验较少,赛前多次调试电脑和手机摄像头是否正常工作,(因为双机位监考嘛)。 2、考试地点选择:因为学校可能就我自己考PAT (才怪) ,所以选择在寝室阳台,因为下午较热,在前面挡了一个床单遮挡阳光,但是万万没想到在第二机位的手机因为同时进行者摄像头、热点(寝室网络可能不稳定)、充电(手机电池缩水严重)的缘故,导致手机高温过热保护,手机监考小程序客户端无法打开,浪费了一些时间。 3、手机正常
2021-09-12 10:52:33
2098
原创 软件设计师-第三章数据运算(排序)
一、冒泡排序O(n2)O(n^2)O(n2) #include<iostream> using namespace std; const int N = 100010; int n; int nums[N]; int main(){ cin >> n; for(int i = 0; i < n; i++) cin >> nums[i]; for(int i = 0; i < n - 1; i++)
2021-03-08 17:29:48
184
原创 软件设计师-第三章数据运算(查找)
一、顺序查找 C++模板 bool search(int l, int r){ for(int i = l; i <= r; i++) if(match) return true; return false; } 二、二分查找 模板1: 将待查找区间分成 [l, mid] 和 [mid + 1, r] C++代码 int demo1(int l, int r){ int mid = (l + r) / 2; if(check(mid)) r = mid; else l =mid
2021-03-08 11:23:45
142
原创 软件设计师-第三章-构建哈夫曼树
一、思路 哈夫曼树目标建立一棵权值最小的树。 每次选取两个权值较小的结点作为左右子树构造一棵新的二叉树,置新构造的二叉树的权值为左右子树的权值之和。 将新构造的这棵二叉树作为我们的选取的一部分。 因为选取最小两个权值,可以用到堆,可以方便的获得最小值 C++中的堆是优先队列 priority_queue 需引用头文件#include<queue> 二、代码 #include<iostream> #include<queue> using namespace st
2021-03-07 17:47:20
420
原创 软件设计师-第三章-串的模式匹配KMP
#include<iostream> #include<vector> using namespace std; //朴素串匹配算法;时间复杂度【最好O(n+m)】【最坏O(n*m)】 void Index(string s, string t, int pos){ int i = pos, j = 0, sl = s.size(), tl = t.size(); while(i < sl && j < tl){ if(
2021-02-27 15:06:34
169
原创 软件设计师-第三章-串
#include<iostream> using namespace std; //将串s赋值给t void StrAssign(string &s, string &t){ for(int i = 0; s[i]; i++) t += s[i]; } //将串t接在s的尾部,形成一个新串在s中 void Concat(string &s, string t){ int index = 0; while(!s[index]) index++;
2021-02-27 11:03:44
124
原创 软件设计师-第三章-队列
#include<iostream> #include <cstring> using namespace std; const int MAXN = 10000; typedef struct queue{ int data[MAXN]; int l,r; }Queue; Queue* initQueue(){ Queue *q = (Queue*)malloc(sizeof(Queue)); memset(q->data, 0, siz
2021-02-26 15:47:42
88
原创 软件设计师-第三章-栈
#include<iostream> #include<cstring> using namespace std; const int MAXN = 10000; typedef struct stack{ int q[MAXN]; int top; }Stack; Stack* initStack(){ Stack *st = (Stack*)malloc(sizeof(Stack)); memset(st->q, -1, sizeof
2021-02-26 14:25:18
126
原创 软件设计师-第三章-链表
#include<iostream> using namespace std; typedef struct linknode{ int val; struct linknode* next; linknode(int v){ val = v; next = NULL; } }LinkNode; void fastRead(){ ios::sync_with_stdio(); cin.tie(); } Lin
2021-02-26 11:18:53
132
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人