随笔分类 - 算法
acwing的算法题
摘要:
#整数二分模板 // 区间[1,r]被划分成[1, mid]和[mid + 1, r]时使用 int bsearch_1(int l, int r) { while(l < r) { int mid = l + r >> 1; if(check(mid)) r = mid; else l = mid
阅读全文

摘要:
#归并排序 #include<iostream> using namespace std; const int N = 100010; int q[N]; int tmp[N]; void merge_sort(int q[],int l, int r) { if(l >= r) return ;
阅读全文

摘要:#快速排序 1.确定分界点 2.调整区间 3.递归处理左右两段 难点在如何调整区间,使用左右两个指针,当位置不对时互换两个指针的位置。 记住边界条件,j和j+1 #include <iostream> using namespace std; const int N = 100010; int q[
阅读全文