淺談數據結構的學習方法
查看(1986) 回復(0) |
|
|
發表于
樓主
不少同學在剛開始學習數據結構的時候覺得數據結構很難學。這里,我將我學習數據結構的
方法與大家分享,希望能對大家有所幫助。 一、不要過分關注數據結構的語言實現。 首先讓我們來看看數據結構的定義:數據結構是存在一種或多種特定關系的數據元素的集合。由數據結構的定義可以得知,數據結構并不是“某種語言的”數據結構,它是和具體的語言無關。一些同學在學習數據結構的時候往往不自覺地把數據結構與某種計算機程序設計語言(比如C語 言)聯系起來。比如,說到數組,大家的第一反應很可能是“[ ]”符號,說到鏈表,也許最先聯想到的是“*”符號。雖然在實際應用中,數據結構總是要由某些語言來實現,但在學習數據結構的過程中,如果過分關注于數據結構的語言實現,我們的思想將被束縛在這些語言的語法規范中。我們應該關注的是,為什么要用這種數據結構,而不用那種;在什么情況下用什么樣的數據結構;幾種數據結構的聯系和區別,優點和不足是什么……諸如此類的問題。計算機程序設計語言只是數據結構的實現方式,這種方式往往是多變的,因為計算機程序設計語言正在不斷地更新換代。然而,數據結構作為框架和思想,是相對穩定的。我們學習數據結構,重要的是學習數據結構中的框架、原理和思想,只有理解和掌握這些,才能夠很好地運用數據結構來解決實際問題。 二、重視實踐 這是一個老生常談的問題,并不僅僅是在學習數據結構的時候需要動手實踐。正如前面提到的,在實際應用中,數據結構總是要由某些語言來實現的。計算機科學是一門應用科學,我們掌握的理論知識,只有應用到實際中才能體現出價值,數據結構也是這樣。學習并掌握數據結構中的框架、原理和思想,目的是為應用打好扎實的理論基礎。我們不能過分關注數據 結構的語言實現,但也不能完全不動手實踐。動手實踐有兩個意義:一是驗證我們的想法是否正確。比如,在設計一個新的數據結構時,我們腦中產生的數據結構設計思路并不一定是完美的,而往往是不完備,甚至是錯誤的。“實踐是檢驗真理的唯一標準”,我們需要通過用程序實現我們的想法來驗證我們的想法的正確性。動手實踐的第二個意義是培養我們完整、徹底地解決問題的能力。我們在思考的時候,往往只是粗略地解決了某個問題,沒有細化(其實是無法細化)。 在動手實踐的過程中,我們會遇到很多細節問題,這些是我們在思考的時候無法考慮到的,但又是解決問題所十分必要的。因此,動手實踐的過程,實際上是培養我們完整、徹底地解決問題能力的過程。 綜上所述,只是將理論與實踐緊密結合,才能學好數據結構 |
回復話題 |
||
|
|