看板 NTUE-CS100 關於我們 聯絡資訊
最後一個功能 排大小 簡單講一下,如果你上面都已經懂了,那現在應該覺得很簡單才是 我們假設由大排到小 ex. head->大->....->小 概念作法一樣是弄個指標p p ↓ head→□→□→□→□→□ 一樣從head開始,掃過整個list 在list中的某個node發現... p 這個叫p->next ↓ ↓ ... □ → □ ... 發現(p->data) > input > (p->next->data)時 就是該插入的時候啦 cin>>input; p = head; while(p){ if(//input的值介於兩個node.data之間){ 插入新node; } } //如果跑到最後了發現還沒插入 if(p==0){ //就把它插在最後面 } Linked List的好處就是長度可以不斷變動,而且可以在任意位置插入或刪除node。 所以處理容易劇烈改動的資料,(ex.飛行射擊遊戲的敵機,不斷大量出現又不斷爆炸消失) Linked list會比Array來的有效率。 指標雖然有點兒複雜,但是指標的間接性帶來了很大的彈性。 (ex. Linked list用一個指標就可以控制無限長的node 如果這些node都需要變數名稱,那linked list的強大功能立刻受限 ) 所以學C++不用指標就白學啦,Java、python、ruby一堆語言其他方面都強過C++。 最後記得,我一直提到記憶體的觀念,唯有底層觀念清楚指標才有可能學好。 打到最後腦袋有點不清楚啦 有錯的話請多多包涵 各位加油啦~晚安 -- 懷著一顆對這個家有無限關愛的心,我 再度流浪到遠方。 --<舒伯特> 這些年來,我唱著歌,唱出愛,可是它對我來說卻是痛苦; 我唱出痛苦,可是它對我來說又是愛。 愛與痛苦就這樣分割著我。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.68.15.230
Markseinn:受教了~晚安~ 04/08 23:49
※ 編輯: chchwy 來自: 203.68.15.230 (04/09 00:02)
bestpika:專業推XD 04/09 00:17
shinemon:先說早安好了 = = 04/09 00:26
nash3629:我也是要早安的 = = 04/09 00:33
gingkoginkgo: 早安+1 = = 04/09 00:54