求c語言雙向循環鏈表的一個應用例子
數據結構已經做出來了,需要一個適合這個結構的應用例子,即用它可以解決什麼問題? 舉的例子不要太難了,還要實現的.. (這是學校的課程設計..)
最佳回答:
排序做例子。
比如。有10個數。從大到小排序成有序數組a[0]~a[9]
這時如果加入第11個數時要要保序新的數組有序,假設這個值要插在第a[n] n<9;
那就意味 著插入前要把a[n]-a[9]的位置向後移一位,在插入a[n]
這樣。要操作的指令就多了。
用鏈表的話只要對要插入N個結點及附近的結點信息就可以通過幾個操作就搞定了
那單向鏈表與雙向鏈表在於。插入,和遍歷的靈活性
比如你找到鏈表中 的一個結點P。現在要遍歷 出 他前面 N個結點打印出來
用雙向的話直接可 反向一個個找出來打印
而用單向的話。能產現 打印出結點P後面N個結點
——————————————————————
你的程序可以命題為,一個有序的數據集,(比如檔案)按某條件排序 ,用雙向鏈表存,
輸入文件編號
1打印出該檔案的其他信息( 如日期 )
2打印出該檔案前N條信息
3打印出該檔案後N條信息
功能2和3寫成函數傳入參數為結點指針---這樣在函數你就會發現鏈表的結構優點了