前言:找了上課時數(shù)據(jù)結(jié)構(gòu)的教程來看,但是用的語言是c++,所以具體實現(xiàn)在網(wǎng)上搜大神的博客來看,我看到的大神們的博客都寫得特別好,不止講了最基本的思想和算法實現(xiàn),更多的是側(cè)重于實例運用,一邊看一邊在心里隱隱歌頌大神的厲害,然后別人的厲害不是我的,所以到底看得各種受打擊+頭昏腦漲,寫這個系列是希望自己能夠總結(jié)學到東一塊、西一下的知識,因為水平有限+經(jīng)驗不足,所以在此只說最基礎的思想,附上我自己的算法實現(xiàn)(肯定還有更優(yōu)解),如果要想看進階版的,可以在園里搜“數(shù)據(jù)結(jié)構(gòu)”,各種語言實現(xiàn)和進階提升的文章有很多,希望大家都能盡快打敗數(shù)據(jù)結(jié)構(gòu)這個紙老虎~
參考書是:數(shù)據(jù)結(jié)構(gòu)(c++版)(第2版) 編者:王紅梅、胡明、王濤
正文:
熱身準備:
1、根據(jù)數(shù)據(jù)元素之間的不同關系,數(shù)據(jù)結(jié)構(gòu)可以分為以下四種:
(1)集合:數(shù)據(jù)元素之間的關系就是“屬于同一集合”,除此之外,沒有其他關系。(此關系過于簡單,就不詳述了)
?。?)線性結(jié)構(gòu):數(shù)據(jù)元素之間存在“一對一”的線性關系。
?。?)樹結(jié)構(gòu):數(shù)據(jù)元素之間存在“一對多”的層級關系。
?。?)圖結(jié)構(gòu):數(shù)據(jù)元素之間存在“多對多”的任意關系。
2、數(shù)據(jù)結(jié)構(gòu)在計算機中的存儲方式,主要有兩種:順序存儲和鏈接存儲。