个人理解排序算法的重要性

Posted xulovecara

tags:

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

这几天再看排序,有提到排序稳定性的问题。排序分为稳定(冒泡排序、插入排序、归并排序、基数排序)和不稳定(选择排序、快速排序、希尔排序、堆排序)。

看见过一个面试题问过排序算法稳定性的应用,当时不怎么理解,现在整理出来一些思绪。

给出一组数据(比如学生信息),每个数据都有不同的属性(成绩A,成绩B,等等)。加入现在成绩A是第一排序元素,成绩B是第二排序。这样可以先用排序算法(稳定和不稳定都可以)将所有学生按照成绩B排序,接下用成绩A排序。这样相同成绩B的学生就可以按照成绩A的先后输出。

现在逐个输出时,首先输出的是成绩A最高的学生,接下来如果学生的成绩A相同,那么会按照成绩B最高的先输出。

 

以上是关于个人理解排序算法的重要性的主要内容,如果未能解决你的问题,请参考以下文章

算法--排序--分治与快速排序

简易学算法之堆排序

常见排序算法小结

关于分治算法的个人理解

十大经典排序算法+sort排序

常见排序算法小结