《資料結構的C++偽碼實現》(《DATA STRUCTURES A Pseudocode Approach with C++》)讀書筆記(一) (轉)
首先寫一下書評吧,我覺得我對語言的學習有兩個階段的跨越比較重要。第一個階段是在細讀譚浩強的《c語言設計》的時候理解了指標的概念,讓我跳躍了一大步;第二個階段是在攻讀《資料結構(c語言版)》(嚴蔚敏)的時候理解了資料抽象的概念是透過結構體,指標來抽象化成連結串列之類來描述比如的一些形態。然後我接觸到了C++,這個傳說功能很強,但是很難深入的語言,這其中有同學勸我去學習之類,但我還是捨不得C、C++。因為我發現C++強大的資料抽象功能,所以我決定讀一本用C++描述的資料結構,於是便在圖書館裡找到了這本書,好在沒有畏懼它是英文版的,也慶幸沒有畏懼。
可能很多人對英文版的教材很是害怕,其實大可不必,我這次深深體會到了這一點。作為一本類的教材,用英語描述出來更加淺顯易懂,裡面也沒有生澀的單詞。基本上大學透過四級,甚至高中生都可以閱讀了。關鍵的部分是閱讀這樣的原版教材比去理解別人生澀的翻譯簡單多了,我在一個月的時間裡閱讀和思考了240頁,很多資料結構的概念和演算法很容易就可以在腦海裡建立。在閱讀中文版的時候我普遍覺得技術性的詞語太多了,阻遏了我去理解和建立概念的能力,所以推薦大家去閱讀英文版的計算機類教材,還有增強英語閱讀能力、擴大詞彙量的好處。
其中在Preface裡提到了這本書的特點:
Our primary focus in this text is to present data structures as an introductory subject,taught in a lower-division course.With this focus in mind,we present the material in a simple,straightforward manner with many examples and figures. We also deemphasize the mathematical ect of data structures,leaving the formal mathematical proofs of the algorithms for later courses.
大致的意思是說透過很多例子和圖示這樣很直接、簡便的方式向大家提供了理解資料結構的途徑,並且儘量忽略了資料結構的數學證明。而且本書一個很大的特點是運用標準的類英語虛擬碼的形式描述資料結構和演算法。閱讀此書,雖然只讀了5章,我已經忍不住地想寫一篇書評推薦給大家了。透過figures(圖表)所謂的Visual Approach 我們可以輕鬆的建立譬如search,link list,stack,queues等等的概念。每一章後面都有Pedagogical End Materials,一些訓練,分為Exercises,Problems,Projects認真思考這些問題可以訓練自己的實踐運用能力。
另外書的後面附錄的很多內容也是很有價值的,比如一些C++的基本內容及其程式庫、隨機數、Program Standards and styles。後面兩部分我也是在閱讀前5章內容的時候閱讀的。
不過至今不爽的是網上沒有找到這本書的電子版,裡面的程式也沒有找到,包括人民郵電出版社也沒有提供。這是唯一的遺憾了,不過663頁,¥55塊人民幣已經是超值了。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-962685/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 《資料結構的C++偽碼實現》(《DATA STRUCTURES A Pseudocode Approach with C++》)讀書筆記(三) (轉)資料結構C++StructAPP筆記
- 《資料結構的C++偽碼實現》(《DATA STRUCTURES A Pseudocode Approach with C++》)讀書筆記(四) (轉)資料結構C++StructAPP筆記
- 資料結構與演算法讀書筆記 - 004 -C++遞迴資料結構演算法筆記C++遞迴
- Linux Data Structures(Linux資料結構)(轉)LinuxStruct資料結構
- 《Effective C++》第5章 實現-讀書筆記C++筆記
- C++讀書筆記:字串C++筆記字串
- 《Effective C++》讀書筆記C++筆記
- 資料結構——單連結串列的C++實現資料結構C++
- 資料結構 - 單連結串列 C++ 實現資料結構C++
- 【資料結構】實現單連結串列(c++)資料結構C++
- 【資料結構】順序棧的實現(c++)資料結構C++
- 《高質量C++程式設計指南》讀書筆記(一) (轉)C++程式設計筆記
- 【資料結構】實現順序表(c++)資料結構C++
- C++資料結構和pb資料結構的轉換C++資料結構
- 【資料結構】實現迴圈連結串列(c++)資料結構C++
- C++筆記——C++基本思想與實現(一)C++筆記
- 【資料結構】順序佇列的實現(c++)資料結構佇列C++
- 【資料結構】迴圈佇列的實現(c++)資料結構佇列C++
- 《深度探索C++物件模型》讀書筆記C++物件模型筆記
- 《資料庫系統實現》讀書筆記資料庫筆記
- C++ Primer 讀書筆記 - 第一章C++筆記
- MySQL 讀書筆記 (一) 體系結構MySql筆記
- C++ 手撕--基本資料結構的簡單實現C++資料結構
- 資料結構學習(C++)——單連結串列(定義與實現) (轉)資料結構C++
- 資料結構學習(C++)——序言 (轉)資料結構C++
- 《Effective C++》第3章 資源管理(2)-讀書筆記C++筆記
- 《Effective C++》第3章 資源管理(1)-讀書筆記C++筆記
- 資料結構學習筆記(一) (轉)資料結構筆記
- 資料結構學習(C++)——圖(總結) (轉)資料結構C++
- 資料結構學習(C++)——樹(總結) (轉)資料結構C++
- 資料結構與演算法——B樹的C++實現資料結構演算法C++
- 資料結構與演算法分析 讀書筆記(樹)資料結構演算法筆記
- 《深度探索c++記憶體模型》讀書筆記 (二)C++記憶體模型筆記
- c++基本資料結構C++資料結構
- C++ 資料結構-堆C++資料結構
- 《從陷阱中學習C/C++》讀書筆記C++筆記
- 【讀書筆記】代理模式翻譯成C++了筆記模式C++
- 《C++ Primer》讀書筆記(第一章 開始)C++筆記