1. 轉帖:演算法好學嗎——《大話數據結構》讀者書評
om/?p=739作者:陳鋼摸著鍵盤寫這篇東西的直接動力是給程傑剛剛出版的大作《大話數據結構》寫個書評,外加利用我這微乎其微的影響力做做廣告怎麼說程傑同學也送了我一本親筆簽名的繁體版《大話數據結構》。不過,今天早上看到了劉未鵬的新文章,知其所以然(三):為什麼演算法這么難?,我覺得光寫書評不太爽,寫點我學演算法的失敗經歷吧,順帶說說程傑同學的這本新書。 說實話,本文的標題是個偽命題。演算法是否好學,或者說是否容易學,完全取決於你的學習目標,是要應付下個月的考試,還是准備考個研究生,或者是想搞定二三流公司的筆試,還是想去微軟當科學家當然,不排除有人的目標是圖靈獎。不動腦子都能知道,只是應付考試的學習應該是難度最低的,真正在復雜的業務流程中合理的設計和應用高效的演算法的難度無疑要高出一截,至於圖靈獎我也不知道,那玩意太遙遠。 目標的不同導致了所需的學習資料是完全不同的,《大話數據結構》的封底是這樣描述它的目標讀者的:《大話數據結構》適合學過一門編程語言的如下讀者: 在讀的大中專計算機專業學生; 想轉行做開發的非科班人員; 想考計算機專業研究生的應屆或在職人員; 工作後想重溫數據結構和演算法的程序員; 顯然,從目標讀者就能看出,這本書不是給高手看的。我曾經扮演過其中的一種角色,想考計算機專業研究生的應屆或在職人員,不過我那時候讀的是一本經典的教材,嚴蔚敏老師的《數據結構》(其實在《大話》前言中也提及了這本書)。因為所學的專業跟計算機搭界不多,所以在考研前所有的計算機知識來自於三門包羅萬象卻連點到即止就算不上的課程:計算機導論、計算機軟體設計、計算機硬體設計。當時的學習方法就是劉未鵬說的背,不管演算法和各種數據結構的來龍去脈,也無論能否理解,一律背下來。反正當時的目標就是考研究生。 但我也發現,本為考研究生而短期惡補的知識,應付一般的企業筆試和面試也勉強夠了。考研復習其實挺枯燥的,每天重復幾乎類似的生活。有天同學說,傳說中的華為來學校宣講。為了調劑一下生活,捏著一頁紙的簡歷就跑去應聘軟體開發職位。一輪筆試,幾輪面試下來,憑著我兩個月惡補的那點數據結構知識,我竟然全部通過了。體驗完簽約儀式注意,只是體驗了一下,然後回到教室繼續備考。 最後,考研的專業課也得了個還不錯的成績。從這方面看,演算法、數據結構之類的東西學起來似乎並不難,短時間抱著死板的教材就能應付考試,應付企業的筆試面試。如果能讀讀《大話》這樣通俗易懂的讀物,達到這樣的目的應該是更加容易。我當時真正的水平怎麼樣?啥都不會,動態規劃都寫不完整,分治法之類的東西就更不懂了。NP-complete理論?沒聽說過。光是背了幾篇經典小說的人,看過小說背景介紹的人是寫不出什麼好東西的。必須要了解別人作品的前前後後方方面面,自己不停地寫,不停地想,才有可能真的寫出好東西。演算法也是如此,弄清楚每個數據結構、演算法的每個細節的緣由,才能設計出自己的好演算法。但市面上能像劉未鵬的知其所以然(三):為什麼演算法這么難?這樣解析演算法的書是沒有的。即使是劉未鵬寫了幾篇,要等他攢出一本完整的書,也需要漫長的等待。而且全書每個演算法的解析是否都能到這個水平也是個疑問。 但如果搞計算機的人都停留在《大話》所要達到的水平,那無疑是一種悲哀。我學演算法的經歷之所以失敗,正是因為如此。為了考試而啃完嚴蔚敏老師的《數據結構》和一兩本考試參考書之後,我再也沒有讀完一本演算法的書,也沒有自己寫過稍有難度的演算法。所以,水平也就一直停留在看看文檔,調調函數的水平上。 希望有人能以《大話》為起點,而不是以讀完此書為終點;也期望程傑兄能創作出更高水平的佳作。 陳鋼同學是我的朋友,在我寫作時給予了我很多幫助。此評論寫得相當客觀,並沒有誇大地說好話,而是強調了《大話數據結構》僅僅只是數據結構與演算法學習的起步而已。我轉帖出來,也是希望讀者可以了解,演算法要學好,可真不是幾日之功。我們都需要不斷努力!
2. 數據分析師必須掌握的數據結構有哪些
【導讀】對於數據分析工程師來說,數據結構是必知必會的,是數據分析師基礎學習的部分,在進行數據結構學習的時候,是繞不過的一個基礎,那麼數據分析師必須掌握的數據結構有哪些?今天我們要推薦的就是一份能夠幫助大家學好數據結構的書單,趕緊學起來吧!
1、大話數據結構
《大話數據結構》為超級暢銷書《大話設計模式》作者程傑潛心三年推出的扛鼎之作!以一個計算機教師教學為場景,講解數據結構和相關演算法的知識。
通篇以一種趣味方式來敘述,大量引用了各種各樣的生活知識來類比,並充分運用圖形語言來體現抽象內容,對數據結構所涉及到的一些經典演算法做到逐行分析、多演算法比較。與市場上的同類數據結構圖書相比,本書內容趣味易讀,演算法講解細致深刻,是一本非常適合自學的讀物。
2、趣學數據結構
本書基於C++語言編寫,從趣味故事引入演算法復雜性計算及數據結構基礎內容,涵蓋線性結構、樹形結構和圖形結構,包括鏈表、棧和隊列、樹和圖的應用等。本書內容還涉及數據結構的基本應用(包括各種查找、排序等)和高級應用(包括優先隊列、並查集、B-樹、B+樹和紅黑樹等)。
通過大量圖解將抽象數據模型簡單通俗化,語言表述淺顯易懂,並結合有趣的實例幫助讀者輕松掌握數據結構。
3、Python數據結構與演算法分析
了解數據結構與演算法是透徹理解計算機科學的前提。隨著Python日益廣泛的應用,Python程序員需要實現與傳統的面向對象編程語言相似的數據結構與演算法。
本書是用Python描述數據結構與演算法的開山之作,匯聚了作者多年的實戰經驗,向讀者透徹講解在Python環境下,如何通過一系列存儲機制高效地實現各類演算法。通過本書,讀者將深刻理解Python數據結構、遞歸、搜索、排序、樹與圖的應用,等等。
4、圖解數據結構:使用 C++(其他語言版本也有)
這是一本以C++程序語言實戰來解說數據結構概念的教材。全書內容淺顯易懂,利用大量且豐富的圖示與範例,詳解復雜的抽象理論,從最基本的數據結構概念開始說明,再以C++工具加以詮釋陣列結構、堆棧、鏈表、隊列、排序、查找等重要的概念,引領讀者抓住重點輕松進入數據結構的學習領域。
《圖解數據結構:使用C++》內容架構完整,邏輯清楚,採用豐富的圖例來闡述基本概念及應用,有效提升可讀性。以C++程序語言實現數據結構中的重要理論,以范常式序說明數據結構的內涵。強調邊做邊學,結合下載文件,給予最完整的支援。
在進行數據結構學習的時候,以上分享的數據結構的書單,大家可以有效利用起來,希望對大家有所幫助,另外,數據分析師是近幾年針對大學生的新興職業,所以對於大學生就業是很有幫助的,如果大家想要在這方面有所發展,不妨去努力學習一下,了解一下數據分析師的日常工作,考一個相關的證書。
3. 求大話數據結構上的冒泡排序代碼的解釋 第一個循環限制條件不太懂 求哪位大俠解釋一下!感激不盡!
樓主看到這句話
if(l->r[j]>l->r[j+1]) /* 若前者大於後者 */
看看兩個括弧裡面是什麼, j 和 j+1 , 吧
而 i<l->length, i 又賦給了 j, 則 j + 1 不就是最後一個元素了嗎
有 n 個元素, 最多隻要循環 n - 1 次就能排好, 不信拿個最壞的例子試試
比如有 三個元素, 1, 2, 3, length == 3
j 的變數只到了 2, 那麼 j + 1 就到 3 啦,
4. 哪本《數據結構與演算法》最好
如果是想入門,推薦程傑的《大話數據結構》,沒有太多的生搬硬套,語言幽默風趣,口語化的說教。很難想像在公交車或者地鐵上讀嚴蔚敏的數據結構,但是我的的確確在地鐵上(半個小時),讀完了程傑兄兩章《大話》。
5. 大話數據結構適合java嗎
《大話數據結構》這本書的前 4 章適合java入門,其餘不太適合入門,如果你只想停留在演算法初級階段,這本書很適合你,但是對於難點的知識,比如平衡二叉樹、B 樹、圖論相關的演算法、堆排序等內容盡量的去看高質量的視頻講解。
Java是一門面向對象編程語言,不僅吸收了C++語言的各種優點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特徵。Java語言作為靜態面向對象編程語言的代表,極好地實現了面向對象理論,允許程序員以優雅的思維方式進行復雜的編程。
由於C++所具有的優勢,該項目組的研究人員首先考慮採用C++來編寫程序。但對於硬體資源極其匱乏的單片式系統來說,C++程序過於復雜和龐大。另外由於消費電子產品所採用的嵌入式處理器晶元的種類繁雜,如何讓編寫的程序跨平台運行也是個難題。
為了解決困難,他們首先著眼於語言的開發,假設了一種結構簡單、符合嵌入式應用需要的硬體平台體系結構並為其制定了相應的規范,其中就定義了這種硬體平台的二進制機器碼指令系統。
6. 《大話數據結構》pdf下載在線閱讀,求百度網盤雲資源
《大話數據結構》(程傑)電子書網盤下載免費在線閱讀
鏈接:
書名:大話數據結構
作者:程傑
豆瓣評分:7.9
出版社:清華大學出版社
出版年份:2011-6
頁數:440
內容簡介:
本書為超級暢銷書《大話設計模式》作者程傑潛心三年推出的扛鼎之作!以一個計算機教師教學為場景,講解數據結構和相關演算法的知識。通篇以一種趣味方式來敘述,大量引用了各種各樣的生活知識來類比,並充分運用圖形語言來體現抽象內容,對數據結構所涉及到的一些經典演算法做到逐行分析、多演算法比較。與市場上的同類數據結構圖書相比,本書內容趣味易讀,演算法講解細致深刻,是一本非常適合自學的讀物。
本書以一個計算機教師教學為場景,講解數據結構和相關演算法的知識。通篇?一種趣味方式來敘述,大量引用了各種各樣的生活知識來類比,並充分運用圖形語言來體現抽象內容,對數據結構所涉及到的一些經典演算法做到逐行分析、多演算法比較。與市場上的同類數據結構圖書相比,本書內容趣味易讀,演算法講解細致深刻,是一本非常適合自學的讀物。
作者簡介:
一個被讀者譽為很適合寫IT技術書的傢伙。《大話設計模式》作者。此書07年末出版至今已經簡體版印刷9次、繁體版印刷6次,取得了較好的成績,開創了一種適合國人閱讀的趣味講解IT知識的風格模式。其本人參與過政府、證券、游戲、交通等多種行業的軟體開發及項目管理工作,也曾做過軟體培訓的教師。因曾有過兩年半高中數學教學的獨特經歷,使得其書作當中處處以初學者視角考慮和分析問題,他成為了當前很受歡迎的IT技術圖書作者之一。
7. 關於大話數據結構中這句話怎麼理解(CPU,速度)
那是因為那個演算法的時復雜度是平方階的吧。這地方是相對規模n而言啊,現在n^2,原來1:n;現在是x:n^2啊所以要開根號啊
8. 大話數據結構 pdf 百度網盤下載
你好,我是bumishan16,用網路網盤分享給你,點開就可以保存,鏈接永久有效^_^鏈接:
如果有另外想要的資源或者鏈接失效,可以使用網路網盤推出的【收集文件】功能進行提問收集資源哦,無需轉存簡單快捷,功能鏈接:https://pan..com/disk/main#/transfer/list微信小程序、網路網盤app、web端都已上線