
two pointers
文章平均质量分 53
harkbox
时间不等人
展开
-
Pat学习Two pointers复习
1.递增数列寻找和为某一固定值的两个数 暴力求解: void violentS(vector<int> &a,int target) { int n=a.size(); for(int i=0;i<n;i++) { for(int j=i+1;j<n;j++) { if(a[i]+a[j]==target) { printf("%d %d",a[i],a[j]); } } } } 暴力破解唯一的好处是不需要将数组进行排序原创 2022-04-16 22:49:28 · 1088 阅读 · 0 评论 -
Pat学习之归并排序
两个注意点: 1.step代表两组的总长度,一组的总长度大于等于数组的长度代表排序完成 2.第二个小区间的右边界,应该为min(n-1,i+step-1) void merge(vector<int>&a,int l1,int r1,int l2,int r2)//合并函数 { vector<int> b; int k=0; int i=l1; int j=l2; while(i<=r1&&j<=r2) { if(a[i]>a原创 2022-04-13 21:02:47 · 341 阅读 · 0 评论