
排序
yyf525
这个作者很懒,什么都没留下…
展开
-
插入排序c++
插入排序的原理:找到第一个比自己小的,然后插进去。代码:#include <bits/stdc++.h>using namespace std;int main(){ int n; cin>>n; int a[n]; for(int i=0;i<n;i++) cin>>a[i]; for(int i=0;i<n;i++){ int t=a[i]; int j=i-1; for(;j>=0&&a[j]&原创 2021-10-23 13:34:22 · 88 阅读 · 0 评论 -
选择排序c++
选择排序是一种很基础的排序,原理是:没一次循环,从待排序的元素中找出最大或者最小的元素,与相应位置的元素进行交换。代码:#include <bits/stdc++.h>using namespace std;int main(){ int n; cin>>n; int a[n]; for(int i=0;i<n;i++){ cin>>a[i]; } for(int i=0;i<n;i++){ int minx=a[i],w=i原创 2021-10-23 13:23:01 · 86 阅读 · 0 评论 -
冒泡排序c++
冒泡排序void fun(int a[],int n)//对数组a进行了操作 n表示数组内一共有多少个元素{ for(int i=n-1;i>=0;i--)//顶 { for(int j=0;j<i;j++)//从底到顶的一个遍历 { if(a[j] <a[j+1]) //从大到小的排序 swap(a[j],a[j+1]); } }}快排(sort...原创 2021-10-23 10:05:17 · 1403 阅读 · 0 评论 -
厉害的归并排序
废话不多说,直接上代码:#include <bits/stdc++.h>using namespace std;int a[100001];int b[100001];void h(int l,int r){ int i,j,k; if(l>=r)return ; int mid=(l+r)/2; h(l,mid); h(mid+1,r); for(i=l;i<=r;i++) b[i]=a[i]; i=l,j...原创 2021-10-05 14:15:16 · 136 阅读 · 0 评论 -
快排的程序
快排可以用sort来表示,也可以用函数来表示:#include <bits/stdc++.h>using namespace std;int a[1000];int qsort(int i,int j){ int n=i,m=j,k=a[(i+j)/2]; while(n<=m){ while(n<j&&a[n]<k)n++; while(m>i&&a[m]>k)m--;...原创 2021-10-05 14:55:02 · 287 阅读 · 11 评论