當前位置:學問谷 >

行業範例 >設計 >

數據結構程序設計心得體會

數據結構程序設計心得體會

數據結構是計算機存儲、組織數據的方式。數據結構是指相互之間存在一種或多種特定關係的數據元素的集合。通常情況下,精心選擇的數據結構可以帶來更高的運行或者存儲效率。數據結構往往同高效的檢索算法和索引技術有關。

數據結構程序設計心得體會

一般認為,一個數據結構是由數據元素依據某種邏輯聯繫組織起來的。對數據元素間邏輯關係的描述稱為數據的邏輯結構;數據必須在計算機中存儲,數據的存儲結構是數據結構的實現形式,是其在計算機內的表示;此外討論一個數據結構必須同時討論在該類數據結構上執行的`運算才有意義。一個邏輯數據結構可以有多種存儲結構,且各種存儲結構影響數據處理的效率。

在許多類型的程序的設計中,數據結構的選擇是一個基本的設計考慮因素。許多大型系統的構造經驗表明,系統實現的困難程度和系統構造的質量都嚴重的依賴於是否選擇了最優的數據結構。許多時候,確定了數據結構後,算法就容易得到了。有些時候事情也會反過來,我們根據特定的算法來選擇數據結構與之適應。不論哪種情況,選擇合適的數據結構都是非常重要的。

從上面我們瞭解到了數據結構的重要性,它是一個程序的關鍵因素。拿到“陰風習習的大樓”這個題目時,一開始不知道從哪入手,以為可以把每個位置看成一個圖的一個節點,從而可以用鄰接表這種結構,通過遍歷鄰接表,每次選擇權值小的路徑走就可以得到最短的路徑了。我錯了,完全的錯了。通過認真的分析後,我認識到,這能簡單的看成一個圖,因為每個位置都只能到達它鄰接的位置而不是和其他各位置都有聯繫。而且如果每個位置轉化為圖的一個節點,這樣要表示每個節點的關係就需要n*n節點和n^4大小的數組來存儲各個點的關係。還有這個大樓結構想轉化為一個圖也是不容易的。根據書上有些類似的“老鼠迷宮問題”,讓我想打,不如就用n*n大小的數組直接存儲大樓結構。通過類似走迷宮的方法來遍歷,當遍歷完所有路徑後就能得到一個最小的路徑。那接下來怎樣遍歷呢?我採用了深度優先遍歷的方法,這樣可以用遞歸的方法,簡化代碼。雖然理解上有一定困難,而且遞歸條件的控制要注意。

通過這次數據結構程序設計,不僅讓我對c語言的一些知識得到了回顧,加深了對c語言的掌握。同時也讓我對數據結構知識得到了一定的掌握。知道了怎麼去分析一個題目,怎樣選擇比較好的數據結構。讓我從怎麼樣實現一個程序功能,轉變到怎麼用更少的空間,更短的時間完成程序設計。空間和時間上對程序的優化是評價一個程序好壞的關鍵標準。

通過這次數據結構的程序設計也讓我懂得了怎麼樣去設計一個程序。從問題分析中找出程序所要解決的關鍵問題和數據結構的選擇;在概要設計中完成程序的大體輪廓;在詳細設計中解決關鍵問題的算法和設計;在調試分析中完成程序最終的修補。這樣一個比較好的程序就設計出來了。

  • 文章版權屬於文章作者所有,轉載請註明 https://xuewengu.com/flhy/sheji/31eyvr.html