国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【讀書筆記】數(shù)據(jù)結(jié)構(gòu)與算法之美 第3章 遞歸、排序、二分查找

2022-06-14 22:26 作者:圣斗士-DS-ALGO  | 我要投稿

《數(shù)據(jù)結(jié)構(gòu)與算法之美》,王爭 著

標簽:數(shù)據(jù)結(jié)構(gòu)、算法

第3章 遞歸、排序、二分查找

一、遞歸

作者在隊列這個小節(jié),介紹下面的內(nèi)容:

  • 什么是遞歸

  • 遞歸需要滿足的三個條件

  • 如何編寫遞歸代碼

  • 編寫遞歸的難點

  • 警惕遞歸代碼出現(xiàn)堆棧溢出

  • 警惕遞歸代碼的重復(fù)計算問題

  • 將遞歸代碼改寫為非遞歸代碼

  • 遞歸產(chǎn)生堆棧溢出的原因

  • 什么樣的遞歸代碼可以改寫為尾遞歸

  • 尾遞歸真的可以避免堆棧溢出嗎

點評:遞歸部分,作者從應(yīng)用的角度介紹了一些經(jīng)典數(shù)據(jù)結(jié)構(gòu)或算法教科書沒有介紹的東西,可惜作者在這里舉例的代碼都是很簡單的數(shù)值問題,這對數(shù)據(jù)結(jié)構(gòu)中使用遞歸沒有什么幫助,因為非數(shù)值問題的遞歸算法比數(shù)值問題的遞歸算法要難得多。

?二、排序

作者在排序這個小節(jié),介紹下面的內(nèi)容:

  • 排序算法基礎(chǔ):從哪幾個方面分析排序算法?

  • ?????? 最好時間復(fù)雜度、最壞時間復(fù)雜度和平均時間復(fù)雜度

  • ?????? 時間復(fù)雜度的系數(shù)、常數(shù)和低階

  • ?????? 比較次數(shù)和移動(交換)次數(shù)

  • ?????? 排序算法的內(nèi)存消耗:原地排序算法和非原地排序算法

  • ?????? 排序算法的穩(wěn)定性

  • O(n2)排序:冒泡排序、插入排序、選擇排序

  • O(nlogn)排序:歸并排序、快速排序

  • O(n)排序:桶排序、計數(shù)排序和基數(shù)排序

  • 排序優(yōu)化:如何實現(xiàn)一個高性能的通用的排序函數(shù)

點評:排序部分,選的排序算法都是教材中經(jīng)典常見的,這一節(jié),特別的地方有兩個,一是分析排序算法的性能這里更加直接。二是作者在文中指出“對于排序算法,除學習算法原理、代碼實現(xiàn)之外,更重要的是學習每個算法的特點”,所以作者在這一節(jié)中穿插了一些小問題,比一般教材中格式化式的介紹排序算法更加有意思一些。如為什么插入排序比冒泡排序更受歡迎;如何在O(n)的時間復(fù)雜度內(nèi)查找一個無序數(shù)組中的第K大元素;如何根據(jù)年齡給100萬用戶排序?如何實現(xiàn)一個高性能的通用的排序函數(shù)?

?三、二分查找

作者在二分查找這個小節(jié),介紹下面的內(nèi)容:

  • 二分查找

  • 二分查找的變體問題

?點評:二分查找部分,作者從更加應(yīng)用的角度來介紹,和經(jīng)典教材完全不同。

二分查找應(yīng)用場景的局限性;二分查找是最省內(nèi)存的方式實現(xiàn)快速查找功能;二分查找的變體問題(這個小節(jié)很有特色,值得推薦,不劇透了)

?

?


【讀書筆記】數(shù)據(jù)結(jié)構(gòu)與算法之美 第3章 遞歸、排序、二分查找的評論 (共 條)

分享到微博請遵守國家法律
菏泽市| 乐山市| 枣阳市| 武胜县| 辽源市| 千阳县| 石首市| 五大连池市| 临安市| 四子王旗| 花莲市| 青浦区| 凉山| 凌云县| 临澧县| 保康县| 北辰区| 上栗县| 外汇| 阿克苏市| 额敏县| 德州市| 京山县| 金堂县| 扎赉特旗| 大城县| 普洱| 津市市| 潼关县| 邳州市| 金昌市| 鄂托克前旗| 齐河县| 星子县| 阳东县| 岚皋县| 鹤壁市| 乌鲁木齐市| 潼南县| 邯郸市| 兰溪市|