久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標(biāo)題:
II C語(yǔ)言之后的數(shù)據(jù)結(jié)構(gòu) 1
[打印本頁(yè)]
作者:
liumei
時(shí)間:
2014-4-29 20:14
標(biāo)題:
II C語(yǔ)言之后的數(shù)據(jù)結(jié)構(gòu) 1
到目前為止C語(yǔ)言告一段落快半個(gè)月了,總體來(lái)說(shuō)通過(guò)幾個(gè)月攻略C語(yǔ)言總算是把它們搞定了,包括C后期的多重指針、多維數(shù)組、文件的操作、預(yù)處理指令以及自定義的結(jié)構(gòu)體struct、聯(lián)合union、枚舉enum等等。所以說(shuō)到了目前為止可以脫離書本寫C程序了,但是現(xiàn)在攻略的數(shù)據(jù)結(jié)構(gòu)是一大難題,數(shù)據(jù)結(jié)構(gòu)是一座很高的山,也是最難掌握的知識(shí),又很重要,相當(dāng)于編程核心,基本上所有編程語(yǔ)言都離不開它。通過(guò)了解了半個(gè)月,我認(rèn)為難度比其他方面的應(yīng)用像數(shù)據(jù)庫(kù)Qracle、UC、VC、程序算法、QT、MFC都要大,事實(shí)也是如此,原因在于理論上很簡(jiǎn)單,但真的寫起數(shù)據(jù)結(jié)構(gòu)的程序就有點(diǎn)犯難了,不好理解的說(shuō)。比如最近這些時(shí)寫個(gè)比較基礎(chǔ)的鏈表都練習(xí)了好幾天,總是出錯(cuò),各種問(wèn)題,各種警告,要么就是很常見的段錯(cuò)誤,看起來(lái)一個(gè)簡(jiǎn)單的鏈表都要寫一百多行代碼,除了主函數(shù)之外也就只有創(chuàng)建鏈表、刪除鏈表、插入鏈表、輸入輸出鏈表函數(shù),一共五個(gè)函數(shù)需要調(diào)用,更何況深入的還有置空鏈表、銷毀鏈表、判斷鏈表是否為空、計(jì)算鏈表元素個(gè)數(shù)、鏈表元素關(guān)系函數(shù)等等。看著它們心情實(shí)在是“太好了”,好到直接昏倒的地步。就一個(gè)沒有雙向循環(huán)的鏈表都這么糾結(jié),更何況別的呢。
數(shù)據(jù)結(jié)構(gòu)常見的有:集合、一對(duì)一的線性結(jié)構(gòu)、一對(duì)多的樹形結(jié)構(gòu)和多對(duì)多的圖形結(jié)構(gòu),而最簡(jiǎn)單的就是線性結(jié)構(gòu)了,換句話說(shuō)線性結(jié)構(gòu)的鏈表、堆棧和隊(duì)列是最簡(jiǎn)單最基本的,很多人不得不吐槽了這還是最簡(jiǎn)單的,我暈吧。攻略完C語(yǔ)言之后數(shù)據(jù)結(jié)構(gòu)我整體簡(jiǎn)單的看了看,理論還是蠻簡(jiǎn)單的,都通俗易懂,但是真的寫程序的話還真是不好寫啊!一對(duì)一的寫起來(lái)都很困難,更何況以后的關(guān)系是一對(duì)多甚至多對(duì)多的元素關(guān)系。沒辦法級(jí)別不夠,級(jí)別低的就是做不了級(jí)別高的事,而級(jí)別高的可以做級(jí)別低的事,這是我之前玩網(wǎng)游也好還是單機(jī)也好最喜歡說(shuō)的一句話。練級(jí)就是這么產(chǎn)生的,所以也就不難理解為什么全世界的所有人無(wú)時(shí)不刻都在練自己的各種級(jí)別了。今天升一級(jí),明天爭(zhēng)取再升一級(jí),很多練級(jí)狂最常說(shuō)的話大概就是這了。
線性結(jié)構(gòu)是一對(duì)一的形式,存儲(chǔ)方式是一個(gè)順序的地址,這一點(diǎn)和數(shù)組一樣,線性結(jié)構(gòu)最常見的是堆棧、隊(duì)列和鏈表。生活中的蓋房子相當(dāng)于就是堆棧,先從下面開始建起,然后再建上面的,于是高樓就建好了,反過(guò)來(lái)拆房子是從最高處開始拆最后拆一樓,樓層之間是一個(gè)接著一個(gè)的關(guān)系,堆棧就是這樣的東西,先進(jìn)后出,后進(jìn)先出的原則,堆棧中從第一個(gè)元素開始,每個(gè)元素的指針指向下一個(gè)元素,反過(guò)來(lái)下一個(gè)元素的地址就是上一個(gè)元素的指針變量,于是程序中就形成了堆棧;而另一種生活中的排隊(duì)就是隊(duì)列,也是一個(gè)接著一個(gè),前后之間都有關(guān)系,而且和堆棧不同的是先進(jìn)先出,后進(jìn)后出的關(guān)系,排列方式和堆棧一樣,隊(duì)列中從第一個(gè)元素開始,到最后一個(gè)元素為空,于是就構(gòu)成了隊(duì)列。鏈表相當(dāng)于比之前的順序表多了節(jié)點(diǎn),相當(dāng)于把線性表分成幾組的模式,組和組之間是節(jié)點(diǎn),而每組中的元素是順序儲(chǔ)存的,但組和組并不連接,地址是斷開的,每一組的最后一個(gè)元素的指針指向下一組的第一個(gè)元素,因此產(chǎn)生了節(jié)點(diǎn),因此使用鏈表更效率,但查找的效率卻沒有線性好(看得出所有東西都有缺點(diǎn),沒有完美的)。
樹形結(jié)構(gòu)是一對(duì)多的形式,存儲(chǔ)方式是按照樹形排序的方式來(lái)存入連續(xù)的地址中,比如最常見的是前序排列、中序排列和后序排列,這個(gè)都好說(shuō),簡(jiǎn)單的要命(小學(xué)生都可以學(xué)會(huì)的),樹形結(jié)構(gòu)最常見的是二叉樹,多叉樹。現(xiàn)實(shí)中很多東西都是樹形結(jié)構(gòu),比如家譜表、一顆樹的樹枝。這么好懂的東西,難就難在寫程序,樹的種類比起線性更加的多,而且更加的雜,程序更加的長(zhǎng),不僅僅和線性結(jié)構(gòu)有一樣的函數(shù)操作,而且還增加了新東西,總之比線性表更上一層,如果線性表程序都寫不好,那這個(gè)就......呵呵,相當(dāng)于加法不會(huì)去做乘法。而圖形結(jié)構(gòu)呢,多對(duì)多的形式,比如生活中的地圖線路,比之前的樹形結(jié)構(gòu)更加復(fù)雜,程序的話就更不用說(shuō)了,指針用著都累死你,處處都是指針,二級(jí)指針,網(wǎng)狀結(jié)構(gòu)的關(guān)系太多,所以指針也用的更頻繁,亂指哈哈,都可以迷路了,簡(jiǎn)單的看了看相關(guān)的程序,更加暈。數(shù)據(jù)結(jié)構(gòu)最難的應(yīng)該就是它了,差不多把它能完全掌握的話數(shù)據(jù)結(jié)構(gòu)也就非常高端大氣上檔次了。
所以有時(shí)我在想數(shù)據(jù)結(jié)構(gòu)理解就過(guò)吧,簡(jiǎn)簡(jiǎn)單單弄懂基本的程序就行了, 還是先攻略C++靠譜點(diǎn)。畢竟先會(huì)程序再會(huì)應(yīng)用嘛。同理就像先會(huì)如何用烤箱,再才能烤出西點(diǎn)出來(lái),前者是理論后者是應(yīng)用,說(shuō)起來(lái)還是做西點(diǎn)簡(jiǎn)單,需要的也就是體力而已,再要點(diǎn)小技巧,最主要的還是用心做就行了。而程序就不同,小技巧根本靠不住。要大技巧!
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
aa一级片
|
精品一区二区三区三区
|
自拍偷在线精品自拍偷无码专区
|
精品免费在线观看
|
51调教丨国产调教视频
|
成人久久av
|
六月色婷婷
|
国产毛片av
|
黄色大片在线
|
www.九九热
|
亚洲一区二区久久
|
狠狠干天天操
|
国产成人三级一区二区在线观看一
|
国产成人在线免费观看
|
午夜视频在线
|
午夜天堂网
|
中文字幕1区
|
亚洲裸体视频
|
亚洲免费观看视频
|
国产精品免费一区二区三区
|
国产成人91
|
国产黄色一区
|
国产成人免费在线视频
|
黄色片免费
|
永久黄网站色视频免费观看w
|
国产嫩草视频
|
国产日韩在线播放
|
一区二区三区黄色
|
亚洲一区二区三区免费
|
天天干狠狠操
|
九色91在线
|
亚洲国产中文字幕
|
yy6080午夜
|
99精品视频免费观看
|
欧美性猛交一区二区三区精品
|
中文日韩在线
|
国产精品乱
|
日本一区二区三区免费观看
|
中文在线字幕观看
|
久草免费福利
|
精品国产精品三级精品av网址
|