C/C++语言链表的排序与查找定位
生活随笔
收集整理的這篇文章主要介紹了
C/C++语言链表的排序与查找定位
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在前一篇文章中其實(shí)介紹了鏈表的基本知識(shí),比如構(gòu)建、遍歷、查找等問題,可以參考這篇文章
https://blog.csdn.net/zhanghaiyang9999/article/details/114360628
本篇文章主要介紹對(duì)鏈表的排序操作。
鏈表的排序
鏈表的排序,本質(zhì)上是和其他的數(shù)據(jù)結(jié)構(gòu)(比如數(shù)組)的排序的原理是一樣的,排序的本質(zhì)是元素的交換,知識(shí)鏈表元素的交換稍微麻煩一點(diǎn)。
鏈表元素的交換
比如我們現(xiàn)在有如圖所示的一個(gè)鏈表結(jié)構(gòu):
希望把節(jié)點(diǎn)2和節(jié)點(diǎn)3進(jìn)行交換,交換后的結(jié)果就是:
具體過程為:首先把節(jié)點(diǎn)1的指針指向節(jié)點(diǎn)3,把節(jié)點(diǎn)2的指針指向節(jié)點(diǎn)3的指針指向的節(jié)點(diǎn),再把節(jié)點(diǎn)3的指針指向節(jié)點(diǎn)2,這就完成了節(jié)點(diǎn)2和節(jié)點(diǎn)3的交換。
第一步:把節(jié)點(diǎn)2從鏈表中脫離,即節(jié)點(diǎn)1的指針指向節(jié)點(diǎn)2,如圖所示:
第二步:把節(jié)點(diǎn)2的指針指向節(jié)點(diǎn)4,如圖所示:<
總結(jié)
以上是生活随笔為你收集整理的C/C++语言链表的排序与查找定位的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C语言结构体-大小,对齐,填充,使用及其
- 下一篇: Linux gdb 破解软件密码