算法精解概述

歡迎訪問我的新博客:http://www.milkcu.com/blog/

原文地址:http://www.milkcu.com/blog/archives/introduction-to-mastering-algorithms-with-c.html

原創:算法精解概述

作者:MilkCu

摘要:本文對《算法精解》做了簡單描述,對其中的約束和核心思想簡單介紹了一下。

引言

《算法概述》是一本比較基礎的講解算法和數據結構的書,英文名Mastering Algorithms with C。對於每種數據結構和算法,裏面都有完整的C語言實現,並沒有單純講解算法書籍的空洞感。這本書的英文版是在2001年上市的,中文版2013年才上市,翻譯步伐有點緩慢。雖然是本老書,C語言也是一種古老的語言,但依然散發着經典的光芒。裏面的程序使用純C語言編寫,當然有些可以使用C++的STL簡單的實現。這是一本好書,但是中文​翻譯水平一般,特別是對“引用”濫用很嚴重。

約定

  • 所有void函數都顯式包括return語句
    儘管這不是必須的,但這有助於快速定位函數的返回位置,而不必費力的去匹配大括號。

  • lg x
    這種記法表示以2爲底數,x的對數,正式寫法爲log2 x。這種記法在有關算法的討論中很常見,因此本書也採用這種記法。

數據結構和算法簡介

使用數據結構和算法的三個原因是:效率、抽象和重用性。

在C語言裏,通過使用指向void類型的指針來管理任意類型的數據,而不是在數據結構內部維護一份數據的私有副本。

算法設計的一般方法

隨機法

分治法

動態規劃

貪心法

近似法

軟件工程的思想

模塊化

可讀性

簡潔性

一致性

(全文完)

本文地址:http://www.milkcu.com/blog/archives/introduction-to-mastering-algorithms-with-c.html

發佈了98 篇原創文章 · 獲贊 12 · 訪問量 22萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章