單鏈表倒置,想要倒置應先整理一下倒置的思路,應先知道鍊錶分為幾種:
typedef struct node
linklist;
2.雙向鍊錶:在雙向鍊錶中它的每個資料結點中都有兩個指標
,分別指向直接後繼和直接前驅,資料域儲存資料。結構如下:
typedef struct doublenode
doublenode;
3迴圈鍊錶:最後乙個結點的指標
域指向頭結點
,整個鍊錶形成乙個環
鍊錶倒置思路如下:
第一,先建立乙個鍊錶;建立鍊錶需要先建立結點,結點的建立如下:
typedef struct node
linklist;
鍊錶建立如下:
node
*creatlist(
void
)p->
next
=null
;//最後將最後乙個結點的指標域清空了
return
phead;//返回這個鍊錶的首位址
}第二,鍊錶的倒置
node
*reverselist(
node
*phead)
returnr;}
第三,輸出倒置後的鍊錶
void
showlist(
node
*phead)
printf
("\n");}
intmain(
void
)
單鏈表倒置
單鏈表倒置可以說是面試中提問率最高的題目了。網上有很多單鏈表倒置的演算法,但是實現解釋的不是很清晰。總結了一些演算法之後,把我自己認為好理解的簡單方便的演算法整理下來,方便以後自己複習。1.迭代 下面的 及注釋應該很好的解釋了頭插法來實現單鏈表倒置的思路。1 node reverse node no...
單鏈表的倒置
今天晚上作老師布置的作業,一道是單鏈表的倒置,可把我搞慘了.這裡也把我可悲的經歷與大家說一下,提個醒免得以後犯和我一樣的很傻的錯誤 老師在ppt寫好了函式介面,於是我就直接把它拷貝到vs 2005 express 中編寫,寫好了,ctrl 7 進行編譯,error c4335 檢測到 mac 檔案格...
單鏈表 單鏈表的倒置
例2 4 已知單鏈表h,寫一演算法將其倒置,即實現如圖2.14所示的操作,其中 a 為倒置前,b 為倒置後。資料結構 c 語言版 2.3 單鏈表 57 h 40 60 80 45 23 11 a 倒置前 h 11 23 45 80 60 40 b 倒置後 圖2.14 單鏈表的倒置 演算法思路 由於單...