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


這幾天再看排序,有提到排序穩定性的問題。排序分為穩定(冒泡排序、插入排序、歸並排序、基數排序)和不穩定(選擇排序、快速排序、希爾排序、堆排序)。

看見過一個面試題問過排序算法穩定性的應用,當時不怎么理解,現在整理出來一些思緒。

給出一組數據(比如學生信息),每個數據都有不同的屬性(成績A,成績B,等等)。加入現在成績A是第一排序元素,成績B是第二排序。這樣可以先用排序算法(穩定和不穩定都可以)將所有學生按照成績B排序,接下用成績A排序。這樣相同成績B的學生就可以按照成績A的先后輸出。

現在逐個輸出時,首先輸出的是成績A最高的學生,接下來如果學生的成績A相同,那么會按照成績B最高的先輸出。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM