美文网首页
排序算法

排序算法

作者: 阿杜me | 来源:发表于2018-07-14 17:08 被阅读0次

插值排序法 时间复杂度o(n^2) 空间复杂度o(1)
vector<int> arrary;
for(int i = 1; i < arrary.size(); ++i)
{
for(int j = i; j -1 >= 0 && arrary[j] < arrary[j + 1]; --j)
{
swap(arrary, j, j - 1);
}
}

希尔排序 时间复杂度o(n^1.3) 空间复杂度o(1)
vector<int> arrary;
for(int gap = arrary.size()/2; gap > 0; gap/=2)
{
for(int i = gap; i < arrary.size(); ++i)
{
for(int j = i; j - gap >0 && arrary[j] < arrary[j-gap]; j-=gap)
{
swap(arrary, j, j-gap);
}
}
}

冒泡排序 时间复杂度o(n^2) 空间复杂度o(1)
vector<int> arrary;
for(int i = 1; i < arrary.size(); ++i)
{
bool flag = false;
for(int j=0; j < arrary.size() - i; ++j)
{
if(arrary[j] > arrary[j + 1])
{
swap(arrary, j, j+1);
flag=true;
}
}
if(flag) break;
}

选择排序 时间复杂度o(n^2) 空间复杂度o(1)
vector<int> arrary;
for(int i = 1; i < arrary.size(); ++i)
{
int maxpos = arrary.size() - i;
for(int j=0; j < arrary.size() - i; ++j)
{
if(arrary[j] > arrary[maxpos])
maxpos=j;
}
if(maxpos != arrary.size() - i)
swap(arrary, maxpos, arrary.size() - i);
}

插值排序与冒泡排序区别:
插值排序是往已排序区插入当前数,冒泡排序是从未排序区通过相邻数据交换取出最大值放到一端。
插值排序已排序区不稳定,不是最大(最小)的数值排序,冒泡排序已排序区是最大(最小)的数值排序
插值排序在往已排序区插入数据时,只要找到适当地位子就结束,冒泡排序需要变量所有未排序区数据才能确认最大值

选择排序与冒泡排序的区别:
选择排序与冒泡排序本质都是从未排序取取最大(最小)值放到一端,
不同地是选择排序通过遍历所有未排序取数值,取得最大(最小)值下标,然后放到一端,而冒泡排序是通过未排序取相邻数据两两交换得去最大(最小)值放到一端。

相关文章

  • java实现快速排序、归并排序、希尔排序、基数排序算法...

    快速排序算法 归并排序算法 希尔排序算法 基数排序算法

  • web开发需要知道的几个算法

    算法分类 快速排序算法 深度优先算法 广度优先算法 堆排序算法 归并排序算法

  • 算法学习(1)-排序算法

    八大排序算法九大排序算法再总结[经典排序算法][集锦][直观学习排序算法] 视觉直观感受若干常用排序算法 快速排序...

  • 经典排序算法总结

    经典排序算法集锦 冒泡法 排序算法入门之冒泡排序 排序算法入门之冒泡排序优化

  • 前端算法学习-第一篇

    冒泡排序算法 冒泡排序算法是最慢的排序算法之一,也是最容易实现的排序算法。之所以叫冒泡排序是因为使用这种算法排序时...

  • 七大排序算法之冒泡排序

    七大排序算法之冒泡排序 @(算法笔记)[排序算法, 冒泡排序, C++实现] 冒泡排序介绍 冒泡排序是七大排序算法...

  • 算法-选择排序

    算 法:选择排序算法时间复杂度: 选择排序算法概述 选择排序伪代码 选择排序实现 选择排序算法概述 排序算法有许...

  • 浅谈排序算法

    排序算法有很多种,今天先谈谈一些简单的排序算法。包括桶排序、冒泡排序和快速排序算法。后期总结各种排序算法。 桶排序...

  • 线性排序

    桶排序、计数排序、基数排序 一、线性排序算法介绍 1.线性排序算法包括桶排序、计数排序、基数排序。2.线性排序算法...

  • 算法4:插入排序和选择排序算法的比较

    排序算法列表电梯: 选择排序算法:详见 《算法4》2.1 - 选择排序算法(Selection Sort), Py...

网友评论

      本文标题:排序算法

      本文链接:https://www.haomeiwen.com/subject/ahdypftx.html