- 博客(3)
- 收藏
- 关注
原创 二分查找
// 模版1while(l < r){ int mid = l + r + 1 >> 1; if(check(mid)) l = mid; else r = mid - 1;}// 模版2while(l < r){ int mid = l + r >> 1; if(check(mid)) r = mid; else l = mid + 1;}// 反正就是始终要+1// 模版1: 当l = mid时,mid = l + r + 1 >&
2021-03-27 23:56:08 54
原创 快速排序
void quick_sort(vector<int>& nums, int l, int r){ if(l >= r) return; int i = l, j = r, x = nums[j]; while(i < j){ while(nums[i] <= x && i < j) i++; nums[j] = nums[i];
2021-03-27 17:20:06 46
原创 归并排序
归并排序——分治思想 O(nlogn)void merge_sort(vector<int>& nums, int l, int r){ if(l >= r) return; int mid = (l + r) >> 1; merge_sort(nums, l, mid); merge_sort(nums, mid + 1, r); int i = l, j = mid + 1; vector<int> temp; // 归并——合二为一
2021-03-27 17:17:42 50
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人