官术网_书友最值得收藏!

2.6.3 其他排序算法概述

其他排序算法的使用頻率雖然沒有快速排序高,但會在很多特定的系統上出現。

桶排序是將所有元素按一定的大小分成N個組,再對每個組進行快速排序,最終得到有序的數組,并得到N個桶的記錄,雖然第一次排序的速度不怎么樣,但這N個桶記錄下來的信息對后面的程序邏輯有非常大的幫助。比如,如果我們需要進行模糊排序或模糊搜索,桶信息就會有很大的幫助。

基數排序是針對元素的特性來實施的“分配式排序”,利用數字的特性,按個位數、十位數、百位數的性質將元素放入0~9個桶中,不用排序,幾次合并后就有了序數組,利用元素特性排序的速度比任何其他排序方式都要快。這種算法思路教會我們,在運用算法時可以從元素的特性著手,找到它的特點就有可能找到更合適的算法。

對于基本的、常用的幾種排序算法,我們必須了解,面對比較復雜、難解決的問題,我們需要更廣闊的思路,算法在實際運用中并不是固定的,適合的才是最好的,我們應該隨著問題環境的變化而變化,找到最佳突破口。

主站蜘蛛池模板: 深圳市| 甘孜县| 灵丘县| 涿鹿县| 徐汇区| 巴彦淖尔市| 扎囊县| 西丰县| 孙吴县| 宁化县| 襄樊市| 西畴县| 湖北省| 梁山县| 平阳县| 肥城市| 靖远县| 手游| 平遥县| 英吉沙县| 芒康县| 广昌县| 阿荣旗| 芮城县| 仲巴县| 巴林左旗| 金昌市| 泗阳县| 专栏| 新兴县| 三河市| 竹溪县| 疏勒县| 颍上县| 广宁县| 旌德县| 理塘县| 乐亭县| 淮阳县| 福贡县| 东乡县|