數據結構是什麼的理解!!!!

數據結構是什麼呢?能幹什麼?研究的東西包括哪些???爲什麼是這樣?

數據結構是數據的存儲和組織形式,當你知道了數據是怎麼存儲和組織的纔可以更好的使用編程來調用他們!!

處理數據最有效率並且最省空間。

數據結構很有意思的。計算機只有計算能力,沒有分析、理解能力。所以這需要人來做。這時候問題就被劃分得非常細,當然已經不用將每個操作細分到機器碼指令,那些操作由編譯器實現。但實際的業務邏輯也要牽涉到諸多算法,這時候就需要你來設計算法。日常生活中的很多問題你可以用模糊思維去解決,但你要把這些告訴計算機,那隻能將這些模糊弄清晰。比如你查字典要查537頁,你當然不會從第一頁往後找,而是會隨便翻開中間的一頁,看看多了還是少了,然後反覆這樣,直到與目標頁相差的數量你可以忍受時,你纔會一片一片的翻到目標頁,但計算機卻只能從1開始往後找。於是有新的算法誕生,它隨便哈希一次,看看多了少了,排除掉一部分,就這樣,反覆哈希,就和你的模糊思維相近了,最主要的是這樣找要比順序找效率高很多。數十年後就有人總結出來類似的一些數據結構問題,編排成冊。你就不用費盡心思鑽研了,學習一下兒人家的就可以了。當然,你如果有能力並且有興趣,說不定以後某個算法就以你的名字命名了。

程序的本質是計算(computing),計算的兩大要素是數據與算法。控制單個數據時,變量足夠了。但對於大型程序,處理的數據必然也很大,此時,爲了有效的管理這些數據,我們需要將它們按照一定方式組織起來,以便於操作,到得的東西,便稱爲數據結構。例:你要寫一個類似有道詞典的軟件,那麼,你需要存儲詞彙,於是你需要一個數據結構來組織所有詞彙。當然,你選擇不同的數據結構,算法效率是不同的。比如,你直接用list存儲所有詞彙,那麼查找操作會很慢。一個程序的效率,很大程序上取決於你所使用的數據結構。所以,數據結構是程序設計中非常重要的部分。


數據結構和算法是把實際問題變成計算機可計算的問題。
而語言是把算法變成計算機可以理解的語言。

運用計算機處理數據時,必須解決四個方面的問題:

一是如何在計算機中方便、高效地表示和組織數據;

二是如何在計算機存儲器(內存和外存)中存儲數據;

三是如何對存儲在計算機中的數據進行操作,可以有哪些操作,如何實現這些操作以及如何對同一問題的不同操作方法進行評價;

四是必須理解每種數據結構的性能特徵,以便選擇一個適合於某個特定問題的數據結構


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章