亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

利用python怎么對單鏈表進行反轉

發布時間:2021-02-23 15:50:49 來源:億速云 閱讀:170 作者:戴恩恩 欄目:開發技術

本文章向大家介紹利用python怎么對單鏈表進行反轉,主要包括利用python怎么對單鏈表進行反轉的使用實例、應用技巧、基本知識點總結和需要注意事項,具有一定的參考價值,需要的朋友可以參考一下。

python可以做什么

Python是一種編程語言,內置了許多有效的工具,Python幾乎無所不能,該語言通俗易懂、容易入門、功能強大,在許多領域中都有廣泛的應用,例如最熱門的大數據分析,人工智能,Web開發等。

1.循環反轉單鏈表

循環的方法中,使用pre指向前一個結點,cur指向當前結點,每次把cur->next指向pre即可。

利用python怎么對單鏈表進行反轉

代碼:

class ListNode: 
  def __init__(self,x): 
    self.val=x; 
    self.next=None; 
 
def nonrecurse(head):       #循環的方法反轉鏈表 
  if head is None or head.next is None: 
    return head; 
  pre=None; 
  cur=head; 
  h=head; 
  while cur: 
    h=cur; 
    tmp=cur.next; 
    cur.next=pre; 
    pre=cur; 
    cur=tmp; 
  return h; 
   
head=ListNode(1);  #測試代碼 
p1=ListNode(2);   #建立鏈表1->2->3->4->None; 
p2=ListNode(3); 
p3=ListNode(4); 
head.next=p1; 
p1.next=p2; 
p2.next=p3; 
p=nonrecurse(head);  #輸出鏈表 4->3->2->1->None 
while p: 
  print p.val; 
  p=p.next;

結果:

4
3
2
1
>>>

2.遞歸實現單鏈表反轉

class ListNode: 
  def __init__(self,x): 
    self.val=x; 
    self.next=None; 
 
   
def recurse(head,newhead):  #遞歸,head為原鏈表的頭結點,newhead為反轉后鏈表的頭結點 
  if head is None: 
    return ; 
  if head.next is None: 
    newhead=head; 
  else : 
    newhead=recurse(head.next,newhead); 
    head.next.next=head; 
    head.next=None; 
  return newhead; 
   
head=ListNode(1);        #測試代碼 
p1=ListNode(2);         # 建立鏈表1->2->3->4->None 
p2=ListNode(3); 
p3=ListNode(4); 
head.next=p1; 
p1.next=p2; 
p2.next=p3; 
newhead=None; 
p=recurse(head,newhead);      #輸出鏈表4->3->2->1->None 
while p: 
  print p.val; 
  p=p.next;

到此這篇關于利用python怎么對單鏈表進行反轉的文章就介紹到這了,更多相關的內容請搜索億速云以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持億速云!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

衡东县| 兰考县| 周口市| 遵化市| 平潭县| 威海市| 灵丘县| 达尔| 宁明县| 萍乡市| 秦安县| 渝北区| 张北县| 南澳县| 额敏县| 合肥市| 海宁市| 叙永县| 安龙县| 铜川市| 临西县| 娄烦县| 鹤岗市| 怀来县| 镇沅| 东明县| 庐江县| 沧州市| 榆社县| 和田市| 紫金县| 绥化市| 宣汉县| 宣恩县| 塔河县| 道孚县| 襄垣县| 通城县| 安西县| 锡林郭勒盟| 盐城市|