日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

python链表删除尾部节点_python单链表中如何查找和删除节点?

發(fā)布時(shí)間:2024/10/6 python 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python链表删除尾部节点_python单链表中如何查找和删除节点? 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在之前的文章【python單鏈表中如何插入和輸出節(jié)點(diǎn)?】中給大家介紹了單鏈表是什么,以及如何進(jìn)行添加節(jié)點(diǎn)、輸出所以節(jié)點(diǎn)。下面本篇文章給大家介紹如何查找和刪除節(jié)點(diǎn),希望對(duì)大家有所幫助。

如何從單鏈表中查找節(jié)點(diǎn)?

與大多數(shù)數(shù)據(jù)結(jié)構(gòu)一樣,查找元素是否存在的唯一方法是遍歷整個(gè)鏈表。請(qǐng)注意,如果鏈接列表已排序,我們可以使用二進(jìn)制搜索。但是在這里我們將考慮一個(gè)未排序的鏈表。

工作原理:用戶(hù)給定需要查找的節(jié)點(diǎn)元素,如果我們找到元素,我們返回true,否則返回false;還可以使用計(jì)數(shù)器并返回元素的索引(如果存在)。

算法

1、將指針curr設(shè)置為頭部

2、將curr.data與輸入值進(jìn)行比較:

● 如果相等,則返回True

● 否則,轉(zhuǎn)到下一個(gè)指針

3、重復(fù)步驟1-2,直到找到元素或滿(mǎn)足鏈接列表的結(jié)尾

實(shí)現(xiàn)代碼:def findNode(self,value):

curr = self.head

while curr:

if curr.getData() == value:

return True

curr = curr.getNextNode()

return False

如何從單鏈表中刪除節(jié)點(diǎn)?

從上面的示例中我們知道了如何查找節(jié)點(diǎn),那么我們可以利用它來(lái)刪除節(jié)點(diǎn)。我們可以從用戶(hù)那里獲取一個(gè)值,在鏈接列表中找到該元素,如果它存在,就將其刪除。

注:讓用戶(hù)知道元素是否被成功刪除是非常重要的。因而,當(dāng)刪除成功就返回True,否則返回False;請(qǐng)記住將size屬性減1。

讓我們將要?jiǎng)h除的節(jié)點(diǎn)稱(chēng)為當(dāng)前節(jié)點(diǎn)。其思想是將前一個(gè)節(jié)點(diǎn)的next鏈接到當(dāng)前節(jié)點(diǎn)的next節(jié)點(diǎn)。例如,假設(shè)我們要從給定的鏈接列表中刪除4:原鏈表: H-->3-->4-->5

刪除4后:H-->3-->5

我們需要將3的下一個(gè)節(jié)點(diǎn)指向4的下一個(gè)節(jié)點(diǎn),即5。

假設(shè)我們還要?jiǎng)h除3刪除3后:H-->5

注:要在上一個(gè)節(jié)點(diǎn)和當(dāng)前節(jié)點(diǎn)的下一個(gè)節(jié)點(diǎn)之間建立連接,請(qǐng)務(wù)必跟蹤上一個(gè)節(jié)點(diǎn)。

算法

1、有兩個(gè)指針:

● CURR - 最初 分給頭

● prev - 最初指向無(wú)

2、如果輸入的值與curr的數(shù)據(jù)匹配,檢查prev存在:

● 如果是,則將prev的下一個(gè)節(jié)點(diǎn)設(shè)置為curr的下一個(gè)節(jié)點(diǎn)

● 如果不是,只需將頭部指向curr的下一個(gè)節(jié)點(diǎn)(當(dāng)您要?jiǎng)h除第一個(gè)節(jié)點(diǎn)時(shí)會(huì)發(fā)生這種情況)

● 將size屬性減1

● 返回True

3、如果輸入的值與curr的數(shù)據(jù)不匹配,通過(guò)以下方式前往下一個(gè)節(jié)點(diǎn):

● 指向先前的曲線

● 指著CURR到下一個(gè)節(jié)點(diǎn)CURR

4、重復(fù)步驟1-3直到鏈表結(jié)束

5、如果到達(dá)鏈接列表的末尾,則返回False,表示鏈接列表中沒(méi)有元素與輸入的值匹配

實(shí)現(xiàn)代碼:def removeNode(self,value):

prev = None

curr = self.head

while curr:

if curr.getData() == value:

if prev:

prev.setNextNode(curr.getNextNode())

else:

self.head = curr.getNextNode()

return True

prev = curr

curr = curr.getNextNode()

return False

相關(guān)視頻教程推薦:《python3教程》

以上就是本篇文章的全部?jī)?nèi)容,希望能對(duì)大家的學(xué)習(xí)有所幫助。更多精彩內(nèi)容大家可以關(guān)注Gxl網(wǎng)相關(guān)教程欄目!!!

總結(jié)

以上是生活随笔為你收集整理的python链表删除尾部节点_python单链表中如何查找和删除节点?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 四虎图库 | 欧美日韩在线网站 | 精品网站999 | 中文字幕在线播放一区 | 欧洲做受高潮欧美裸体艺术 | 国产人妖在线播放 | 成人三级电影网站 | 四虎看黄| 男人天堂综合 | 毛茸茸多毛bbb毛多视频 | 99热首页| jizz成熟丰满日本少妇 | 一区二区三区资源 | 另类第一页 | 久久免费看少妇高潮v片特黄 | 国产xxxxx| а√天堂资源在线 | 天天摸天天舔天天操 | 欧美自偷自拍 | 老司机午夜视频 | 色婷婷国产精品综合在线观看 | 日本一区不卡在线观看 | 91精品国产自产91精品 | 日本欧美久久久久免费播放网 | 一区二区激情视频 | 大地资源中文第三页 | 久久无码精品丰满人妻 | 日韩视频免费 | 美丽的姑娘在线观看 | 日本成人在线视频网站 | 天天操人人爽 | av网在线 | av免费网页 | 久草五月 | 亚洲激情午夜 | 亚洲男女在线 | 91在线看黄 | 日韩欧美国产高清91 | 特级毛片a | 91av成人| 久久久最新| 亚洲.www | 一级做a爰片 | 亚洲av成人精品一区二区三区在线播放 | 日本欧美一区二区三区 | 黄片毛片在线 | 福利视频在线看 | 亚洲AV无码AV吞精久久中文版 | 亚洲精品久久久久久国产精华液 | 亚洲欧美日韩在线一区 | 欧美黄色xxx | 国产精品成人久久 | 国产欧美一区二区三区四区 | 欧美偷拍另类 | 一个人在线观看免费视频www | av在线一| 黄色在线视频网址 | 无套内谢88av免费看 | 亚洲午夜久久久久久久久 | 午夜黄色福利 | 黑人巨大精品欧美一区二区蜜桃 | 中文精品在线观看 | 成人va在线观看 | www.夜夜操.com | 九热视频在线观看 | 一区二区三区啪啪啪 | www精品| 国产高潮国产高潮久久久 | 凸凹人妻人人澡人人添 | 爱爱免费视频网站 | 激情狠狠 | 欲色网站 | 欧美 日韩 国产 中文 | 欧美黄色片网站 | 国产一级α片 | 久久久亚洲欧洲 | 亚洲精品另类 | 国产主播精品 | 特级西西人体 | 精品三级电影 | 国产精品久久久久久久久久久新郎 | 好吊一区 | 国产精品电影院 | www.美色吧.com | 91在线免费播放 | 日日噜噜夜夜爽爽 | 韩国三级与黑人 | 欧美在线播放 | 91久久国产综合久久91精品网站 | 夜夜嗨av一区二区三区四区 | 国产四区 | 欧美乱做爰xxxⅹ久久久 | 美女视频毛片 | 香蕉亚洲| 色综合天天网 | 少妇久久精品 | 国产男男gay体育生网站 | 成年人在线观看视频 | 一卡二卡在线 |