博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
14种排序
阅读量:7170 次
发布时间:2019-06-29

本文共 2222 字,大约阅读时间需要 7 分钟。

#include
#include
using namespace std;/*简单插入排序:最差时间复杂度:O(n^2)平均时间复杂度:O(n^2)*/void Insertion_Sort(int *a,int n){ int i,j; for(i=2;i<=n;i++) if(a[i]
a[0];j--) a[j+1]=a[j]; a[j+1]=a[0]; }}/*折半插入排序:最差时间复杂度:O(n^2)平均时间复杂度:O(n^2)*/void Bin_Sort(int *a,int n){ int i,j,low,mid,high; for(i=2;i<=n;i++) if(a[i]
a[0]) high=mid-1; else low=mid+1; } for(j=i-1;j>high;j--) a[j+1]=a[j]; a[high+1]=a[0]; }}/*选择排序:最差时间复杂度:O(n^2)平均时间复杂度:O(n^2)*/void Selection_Sort(int *a,int n){ int i,j,k; for(i=1;i
a[j]) k=j; if(k!=i) swap(a[k],a[i]); }}/*快速排序最差时间复杂度:O(n^2)平均时间复杂度:O(nlogn)*/void Quick_Sort(int *a,int low,int high){ int i=low,j=high; a[0]=a[low]; while(low
=a[0]) high--; swap(a[low],a[high]); while(low
a[i+1]) { change=true; swap(a[i],a[i+1]); } }}/*鸡尾酒排序(双向冒泡排序):最差时间复杂度:O(n^2))平均时间复杂度:O(n^2)*/void Cocktail_Sort(int *a,int n){ int i; int left=1,right=n; bool change=true; while(change) { change=false; for(i=left;i
a[i+1]) { change=true; swap(a[i],a[i+1]); } right--; for(i=right;i>left;i--) if(a[i]
=a[i]) break; else { a[low]=a[i]; low=i; } a[low]=a[0]; }}void Heap_Sort(int *a,int n){ int i; for(i=n/2;i>=1;i--) Heap_Adjust(a,i,n); for(i=n;i>=2;i--) { swap(a[1],a[i]); Heap_Adjust(a,1,i-1); }}/*希尔排序最差时间复杂度:O(n^2)平均时间复杂度:O(n^1.3)*/void Shell_Sort(int *a,int n){ int i,j; int gap=n/2; while(gap) { for(i=gap+1;i<=n;i++) if(a[i]
0 && a[j]>a[0];j-=gap) a[j+gap]=a[j]; a[j+gap]=a[0]; } gap/=2; }}/*计数排序:最差时间复杂度:O(n+k)平均时间复杂度:O(n+k)*/void Counting_Sort(int *a,int n){ int i; int max=a[1]; for(i=2;i<=n;i++) { if(max
a[i+1]) { change=true; swap(a[i],a[i+1]); } for(i=2;i
a[i+1]) { change=true; swap(a[i],a[i+1]); } }}/*地精排序(侏儒排序):最差时间复杂度:O(n^2)平均时间复杂度:O(n^2)*/void Gnome_Sort(int *a,int n){ int i=0; while(i
=1 && a[i]<=a[i+1])) i++; else { swap(a[i],a[i+1]); i--; } }}void Out(int *a,int n){ int i; for(i=1;i<=n;i++) cout<
<<" "; cout<

 

转载于:https://www.cnblogs.com/wc1903036673/p/3499581.html

你可能感兴趣的文章
自学人工智能之数学篇,数学入门并不难
查看>>
手动建立一个maven webapp项目
查看>>
KYVedioPlayer 是基于AVPlayer的封装视频播放器
查看>>
用 javascript 判断 IE 版本号
查看>>
Oracle报 ORA-00054资源正忙的解决办法
查看>>
股票接口整理
查看>>
OSX下的LiveWriter替代软件MarsEdit-wordpress博客的本地客户端
查看>>
IOS中键盘自动隐藏
查看>>
listView, scrollview
查看>>
谈认真
查看>>
关于软件项目管理的心得体会之二
查看>>
struts2工作流程分析
查看>>
Android开发学习总结(四)——Eclipse在线安装ADT插件
查看>>
mysql定时删数据
查看>>
sina t.cn 短网址
查看>>
tabHost的tabwidget放在底部
查看>>
LightGBM and XGBoost Explained
查看>>
Motan源码阅读--工程概述
查看>>
android 如何打包自定义控件
查看>>
基于数据业务对讲的那些事
查看>>