本文目錄一覽:
C語言數據結構與算法:鏈表
先搞清楚基本概念,不懂再問
// 返回一個帶頭結點的且具有五個結點的鏈表
link *initLink()
{
link * p=(link*)malloc(sizeof(link)); // 創建頭結點
link * temp=p; // 使用變量temp在下面創建結點時指向鏈表末端
for(int i=1; i5; i++)
{
link *a=(link*)malloc(sizeof(link)); // 創建一個結點
a-elem=i; // 為結點賦值
a-next=NULL; // 指針域暫時賦為NULL,若後面還要創建結點的話再修改
temp-next=a; // 因為temp指向鏈表末端,即最後一個結點
// 故該節點指針域應指向剛才創建的結點 a
temp=temp-next;// 連接好以後,temp指向下一個結點(剛才創建的結點a,現在是鏈表末端)
}
return p; // 返回頭結點
}
數據結構算法與c語言的關係?
C語言是工具,數據結構是基礎,算法是核心且有難有易,初級的編程只要懂編程語言和一般算法即可,至於數據結構可作一般了解;中級的編程要對數據結構和算法有深入的理解和掌握;高級的編程就需要完全理解各種數據結構以及自己編寫算法了!不過現在的很多程序員都是在中級階段的居多吧!
C語言與算法和數據結構分別有什麼關係?
數據結構的主要作用是幫助你提升自己的編程思維!使你編寫程序的時候有一個好的思維和框架!使你寫的代碼和程序有一個好的框架!數據結構研究的是數據的邏輯結構、存儲結構(物理結構)和數據的運算.其中的數據運算就是指算法
算法只是具體的實現步驟的指令集合!但是算法也是數據結構最重要的一部份!設計一個好的算法可以提高自己程序的運行效率!(算法不一定要求能夠在計算機上直接運行,但程序必須要求能在計算機中運行)
C語言只是對算法或者數據結構的描述!描述數據結構和算法不局限於C語言,也可以是C++語言和其他的計算機語言甚至也可以用人的自然語言!
所以只是說學習好C語言能夠使自己學習的數據結構理論更好的在計算機中描述和表達!
推薦學C語言數據結構和算法的書籍!
數據結構一般都會開這門課,國內的我看的《數據結構》
嚴蔚敏的。算法就是《算法導論》了,要不你看Clifford
A.Shaffer
的《數據結構與算法分析》也可以,都不錯。還有個《計算機程序設計藝術》(The
Art
Of
Computer
Programming)也是經典,覺得差不多了可以看看這個。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/151640.html