sort 排序 最简单的排序算法
2018-03-12 19:42
260 查看
用于C++中,对给定区间所有元素进行排序。头文件是#include <algorithm>
时间复杂度为n*log2(n)
Sort函数有三个参数:(1)第一个是要排序的数组的起始地址。(2)第二个是结束的地址(最后一位要排序的地址的下一地址)(3)第三个参数是排序的方法,可以是从大到小也可是从小到大,还可以不写第三个参数,此时默认的排序方法是从小到大排序。Sort函数使用模板:Sort(start,end,排序方法)
{
return a>b;
}
时间复杂度为n*log2(n)
Sort函数有三个参数:(1)第一个是要排序的数组的起始地址。(2)第二个是结束的地址(最后一位要排序的地址的下一地址)(3)第三个参数是排序的方法,可以是从大到小也可是从小到大,还可以不写第三个参数,此时默认的排序方法是从小到大排序。Sort函数使用模板:Sort(start,end,排序方法)
#include<iostream> #include<algorithm> using namespace std; int main() { int a[10]={9,6,3,8,5,2,7,4,1,0}; for(int i=0;i<10;i++) cout<<a[i]<<endl; sort(a,a+10);//第三个参数不用写(如果是从小到大排序的话) for(int i=0;i<10;i++) cout<<a[i]<<endl; return 0; }当从大到小排序是需要借助第三个参数进行判别bool compare(int a,int b)
{
return a>b;
}
#include<iostream> #include<algorithm> using namespace std; bool compare(int a,int b) { return a>b; } int main() { int a[10]={9,6,3,8,5,2,7,4,1,0}; for(int i=0;i<10;i++) cout<<a[i]<<endl; sort(a,a+10,compare);//在这里就不需要对compare函数传入参数了, //这是规则 for(int i=0;i<10;i++) cout<<a[i]<<endl; return 0; }
相关文章推荐
- 地精排序(Gnome Sort) 最简单的排序算法
- 地精排序Gnome Sort ----(排序算法十)
- “漂亮的”排序算法 Stooge Sort 如何完成排序
- 经典排序算法 - 基数排序Radix sort
- 排序算法---(3)简单插入排序---Java实现
- 在STL泛型算法中的排序函数sort内部使用的是哪种排序算法呢?
- 数据结构杂谈(二)简单有趣的地精排序Gnome sort
- 暑假集训 8.16 数据结构实验之排序三:bucket sort (简单的桶排序)
- 地精排序Gnome Sort ----(排序算法十)
- 简单函数对象取代默认排序准则,改变默认sort()的行为
- 排序算法之简单插入排序
- std list/vector sort 排序就这么简单
- 经典排序算法 - 基数排序Radix sort
- 简单的排序算法——插入排序,选择排序,交换排序(冒泡排序,快速排序)
- 经典排序算法 - 基数排序Radix sort
- 排序算法---简单的选择排序
- js 快速数组排序 Array sort()排序算法 splice()
- 算法排序之最简单最快的排序--桶排序(Bucket Sort)
- 排序算法 简单选择排序
- 排序(一)——几种简单的排序算法