循環鏈表跟普通單鏈表相比,其不同之處,就在于,循環鏈表最后一個元素并非指向NULL,而是指向了頭結點,這樣一來,就將整個鏈表串成了一個環。
那么,這個循環鏈表有什么用呢?它解決了從任意一個結點出發,訪問整個鏈表的問題。
還有一個不同之處就是,遍歷鏈表不用頭指針,而用尾指針rear。則訪問第一元素的結點為,
rear->next->next;
循環鏈表還有一個重要運用就是,將兩個鏈表合并。假設有兩個鏈表A和B,如何實現這兩個鏈表的合并呢?只要將鏈表A的尾部指向鏈表B的頭部,將鏈表B的尾部指向A的頭部,就行了。代碼如下:
p = rearA->next; rearA->next = rearB->next->next; q = rearB->next; rearB->next = p; free(q);
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。