堆排序
来源:互联网 发布:搜索引擎客户数据分析 编辑:程序博客网 时间:2024/05/24 03:21
快速排序、堆排序和归并排序理论上时间复杂度为O(nlogn ),是内存占用较少的情况下,速度最快的排序算法。
当然桶排序的时间复杂度为O(n),但是需要牺牲巨大内存。
#include<iostream>using namespace std;void Dui(int a[],int i,int n){ int j,temp; j=i*2+1; temp=a[i]; while(j<n) { if(a[j]>temp) break; if(j+1<n&&a[j+1]<a[j]) j++; a[i]=a[j]; i=j; j=j*2+1; } a[i]=temp;}void Built(int a[],int n){ for(int i=n/2-1;i>=0;i--) { Dui(a,i,n); }}void Sort(int a[],int n){ cout<<a[0]<<endl; for(int i=n-1;i>0;i--) { int temp=a[0]; a[0]=a[i]; a[i]=temp; Dui(a,0,i); cout<<a[0]<<endl; }}int main(){ int a[5]={3,1,2,5,4}; int n=5; Built(a,n); Sort(a,n); return 0;}
0 0
- 堆及堆排序
- 堆/堆排序特点
- 【二叉堆、堆排序】
- 二叉堆 & 堆排序
- 二叉堆 & 堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆和堆排序
- 堆排序(最大堆)
- 堆和堆排序
- 堆和堆排序
- 堆及堆排序
- 堆和堆排序
- 堆与堆排序
- oracle11g忘记sys密码
- Android_QA
- 一条狗的使命百度云盘资源连接[BD720P+1080P]高清下载百度云
- 【Unity编程】Unity中的欧拉旋转
- hibernate常见错误总结
- 堆排序
- 2.Calling Extraterrestrial Intelligence Again
- L2-002. 链表去重
- Swift: ImplicitlyUnwrappedOptional,Optional
- Pandas入门(上)
- Retrofit2学习记录
- 如何阅读文献(三)
- StringBuffer和StringBuilder
- 随记1——FramLayout先放置Button,再放置TextView,Button会覆盖TextView