![](https://img-blog.csdnimg.cn/20190918140012416.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
基础算法
基础算法
然然zl
这个作者很懒,什么都没留下…
展开
-
整数二分、浮点数二分、三分
目录1.介绍模板2.例题(1)数的范围(整数二分)(2)数的三次方根(浮点数二分)1.介绍模板模板int bsearch_1(int l,int r){ while(l<r) { int mid=l+r+1>>1; //+1 防止死循环 if(chekc(mid)) l=mid; else r=mid-1; } return l;} 模板int bsearch_2(int l,int r){ while(l<r) { int原创 2021-08-06 13:27:07 · 188 阅读 · 0 评论 -
归并排序(求逆序对)
归并排序/*给定你一个长度为 n 的整数数列。请你使用归并排序对这个数列按照从小到大进行排序。并将排好序的数列按顺序输出。*/#include<bits/stdc++.h>using namespace std;typedef long long LL;const int N = 1e5+10;int q[N],tmp[N];void merge_sort(int q[],int l,int r){ if(l>=r) return ; int mid=l+r&原创 2021-08-06 12:15:26 · 304 阅读 · 0 评论 -
快速排序、第k个数
快速排序模板(O(nlogn))/*给定你一个长度为 n 的整数数列。请你使用快速排序对这个数列按照从小到大进行排序。并将排好序的数列按顺序输出。*/#include<bits/stdc++.h>using namespace std;const int N = 100010;int q[N];void quick_sort(int q[],int l,int r){ if(l>=r) return ; int x=q[l+r>>1],i=l-1,j=原创 2021-08-02 23:25:22 · 275 阅读 · 0 评论