向量排序

Posted ccpang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了向量排序相关的知识,希望对你有一定的参考价值。

一、冒泡排序:

技术图片

 每一趟扫描交换,都记录是否存在逆序元素。

  技术图片

举例如下:

  技术图片

  一旦经过某趟扫描之后,未发现任何逆序的相邻元素,即意味着排序任务已经完成,则通过返回标志“sorted”,以便算法即使终止。

  改进的过程如下:

  技术图片

  跳过红色的部分,直接跳转到尾部。

  


 

二、改进冒泡排序:

  绿色代表无序,红色代表有序;

 反例:有序部分位于后面的部分,无序位于前面。每一躺扫描交换都是交换绿色的最后一个元素,使它就位。

 技术图片

用一种方法检测出这种状态,记录后面红色的部分是否是有序的。

  技术图片

  举例如下:

  技术图片

 

以上是关于向量排序的主要内容,如果未能解决你的问题,请参考以下文章

对未排序的向量进行合并排序

对多维向量进行排序

使用整数向量的向量对整数向量进行基数排序

根据索引向量重新排序向量 - 更新

如何获取向量的排序索引?

Armadillo C++:根据其他两个向量对向量进行排序