<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      只用單鏈表的方式判斷一個鏈表是否為回文鏈表

      思路

      • 尋找鏈表的中點:使用快慢指針的方法,快指針每次移動兩步,慢指針每次移動一步。當快指針到達鏈表末尾時,慢指針正好位于鏈表的中間。

      • 反轉后半部分鏈表:從中點開始反轉鏈表的后半部分。

      • 比較前半部分和反轉后的后半部分:逐一比較兩個部分的節點值,如果所有對應的節點值都相同,則鏈表是回文的。

      • (可選)恢復鏈表的原始結構:將反轉的后半部分再反轉回來,以恢復原鏈表結構。

      class ListNode:
          def __init__(self, val=0, next=None):
              self.val = val
              self.next = next
      
      def isPalindrome(head: ListNode) -> bool:
          if head is None or head.next is None:
              return True
      
          # Step 1: Find the end of the first half
          first_half_end = end_of_first_half(head)
          
          # Step 2: Reverse the second half
          second_half_start = reverse_list(first_half_end.next)
          
          # Step 3: Compare the first half and the reversed second half
          p1 = head
          p2 = second_half_start
          result = True
          while result and p2 is not None:
              if p1.val != p2.val:
                  result = False
              p1 = p1.next
              p2 = p2.next
          
          # Step 4: Restore the list (optional)
          first_half_end.next = reverse_list(second_half_start)
          
          return result
      
      def end_of_first_half(head: ListNode) -> ListNode:
          fast = head
          slow = head
          # Move fast by 2 steps and slow by 1 step until fast reaches the end
          while fast.next is not None and fast.next.next is not None:
              fast = fast.next.next
              slow = slow.next
          return slow
      
      def reverse_list(head: ListNode) -> ListNode:
          previous = None
          current = head
          while current is not None:
              next_node = current.next
              current.next = previous
              previous = current
              current = next_node
          return previous

       

      posted @ 2024-09-25 18:21  最小生成樹  閱讀(39)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 丰满少妇被猛烈进出69影院| 9久9久热精品视频在线观看| WWW丫丫国产成人精品| 中文字幕av一区| a男人的天堂久久a毛片| 乱人伦人妻系列| 真实国产精品视频400部| 国产精品亚洲片夜色在线| 固镇县| 日本道不卡一二三区视频| 亚洲一区二区精品极品| 国产精品99中文字幕| 亚洲综合伊人久久大杳蕉| 久久人人爽人人爽人人av| 亚洲码亚洲码天堂码三区| 国产最新精品系列第三页| 亚洲最大福利视频网| 国产初高中生粉嫩无套第一次| 一本av高清一区二区三区| av区无码字幕中文色| 久久免费偷拍视频有没有| 人妻精品动漫H无码中字| 化州市| 亚洲av色精品一区二区| 亚洲欧美牲交| 国产精品久久久久7777| 中国少妇人妻xxxxx| 中文字幕亚洲综合久久2020| 麻豆天美国产一区在线播放| 色又黄又爽18禁免费视频| 国语偷拍视频一区二区三区| 国产精品高清中文字幕| 好爽毛片一区二区三区四| 国内精品久久久久电影院| 日韩成人一区二区三区在线观看| 厨房与子乱在线观看| 国产精品国产精品国产专区不卡| 日韩一区二区三区精品区| 中文字幕人妻精品在线| 欧美综合婷婷欧美综合五月| 国内精品伊人久久久影视|