数据结构
不喜欢蘑菇的蘑菇拳
这个作者很懒,什么都没留下…
展开
-
用数组模拟链表队列和栈
代码】用数组模拟链表队列和栈。原创 2022-07-26 14:43:59 · 217 阅读 · 0 评论 -
校庆——unorder_set和 substr
3、在内部,unordered_set中的元素没有按照任何特定的顺序排序,而是根据它们的散列值组织成桶,从而允许通过它们的值直接快速访问单个元素(平均时间复杂度为常数)。然后在第二行输出最年长的校友的身份证号——注意身份证第7−147−14位给出的是yyyymmdd格式的生日。如果没有校友来,则在第二行输出最年长的来宾的身份证号。1、无序集是一种容器,它以不特定的顺序存储惟一的元素,并允许根据元素的值快速检索单个元素。现在需要请你编写程序,根据来参加校庆的所有人士的身份证号,统计来了多少校友。...原创 2022-07-19 12:35:03 · 200 阅读 · 0 评论 -
前缀和(一维二维)
一维前缀和:原理:s[i]=s[i-1]+a[i];代码://输入一个长度为n的整数序列,接下来再输入m个询问,每个询问输入一对l,r。//对每个询问输出原序列的=中第l个数到第r个数的和 #include<iostream>using namespace std;const int N=100010;int n,m;int a[N],s[N];int main(){ scanf("%d%d",&n,&m); for(int i=1;i<=n;i原创 2022-05-21 16:33:54 · 151 阅读 · 0 评论 -
大整数加减乘除-大数计算器(使用数组)
加法:原理:1.如123456789,存入数组中要反向存储。方便进位等操作,如999+1=1000。9若在数组的0号位,1如何进位成为难题。反向存入,反向输出即可化解这一问题。2.进位用t来操作。t=t(上一位进位)+a[i]+b[i]。之后用求余和除法舍弃小数规则来操作t。3.最后要多判断一步,最大位加完后有无进位。代码:#include<iostream>#include<vector>using namespace std;//const int N =1e6原创 2022-05-19 22:22:19 · 1343 阅读 · 0 评论 -
整数二分查找和浮点数二分查找含cpp代码
二分查找的性质:1、答案一定在区间内2、二分查找一定有解,解和答案比较来判断正误3、整数二分有边界问题,浮点数二分当区间足够小时即可作为答案4、具有单调性的一定可以二分,可以二分的不一定有单调性代码1:int l=0,r=n-1;while(l<r) { int mid=l+r >> 1; if(q[mid]>=x) r=mid; //check函数 else l=mid+1; } 代码2:做完判断后,如果l=mid,mid一定要原创 2022-05-18 21:51:54 · 167 阅读 · 0 评论 -
sort函数排序(cpp)
代码:#include<iostream>using namespace std;#include<algorithm> const int N=1000000;int n;int q[N];int main(){ scanf("%d",&n); int i; for( i=0;i<n;i++) { scanf("%d",&q[i]); } sort(q,q+n); for( i=0;i<n;i++) { print原创 2022-05-16 15:45:57 · 1297 阅读 · 0 评论 -
归并排序(详解+cpp代码)
归并排序:步骤:1.确认分界点 mid=(l+r)/22.递归排序(压栈思想,下文介绍)3.归并,合二为一排序过程:代码部分:#include<iostream>using namespace std;const int N=1000000;int n;int q[N];int tmp[N]; void merge_sort(int q[],int l,int r){ if(l>=r) return;//一个数,结束 int mid= l+r >原创 2022-05-16 15:17:56 · 320 阅读 · 0 评论 -
快速排序(代码+解释)
快速排序步骤:1.确定分界点:x=q[r] q[l] q[(l+r+1)/2]……2.调整区间 小于等于x的放在x左边大于等于x的放在x的右边3.递归处理左右两段排序过程:代码解释:1.i和j起始值偏移一位,在比较时要先移动i和j再进行判断。(这样会比较方便)2.x的取值和递归区间取不合适会产生边界问题十分繁琐,所以记住一例就行。我采用的是x=q[l],递归区间:l,j和j+1到r。l和j一组绑定。代码:#include<iostream>using namespace原创 2022-05-16 09:18:57 · 156 阅读 · 0 评论