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

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

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

      dangdangA

      導航

      雙指針應用

      #同向:不改變元素的相對位置

      #反向:改變元素的相對位置

      例一:翻轉數組,不額外開辟空間O(1)

      [1,2,3,4,5,6,7,8] → [8,7,6,5,4,3,2,1]

       #反向

      1 def reverseArray(s):
      2     i, j = 0, len(s) - 1
      3     while i < j:
      4         s[i], s[j] = s[j], s[i]
      5         i += 1
      6         j -= 1
      7     return s

       

      例二:將數組所有的元素0移動到數組一端

      [0,1,2,0,3,0,0,5,0] → [1, 2, 3, 5, 0, 0, 0, 0, 0]
      #同向
       1 def moveEnd(s):
       2     i, j = 0 ,1
       3     while i < j and j <= len(s)-1:
       4         if s[i] == 0 and s[j] != 0:
       5             s[i], s[j] = s[j], s[i]
       6         while s[i] != 0:
       7             i += 1
       8             j += 1
       9         while j <= len(s)-1 and (s[i] == 0 and s[j] == 0):
      10             j += 1
      11     return s

      #反向

       

       1 def moveEnd(s):
       2     i, j = 0 ,len(s) - 1
       3     while i < j:
       4         if s[i] == 0 and s[j] != 0:
       5             s[i], s[j] = s[j], s[i]
       6         while (i < j) and (s[i] != 0):
       7             i += 1
       8         while (i < j) and (s[j] == 0):
       9             j -= 1       
      10     return s

       

       

       

      例三:將數組的奇數與偶數分開

      [2,7,6,1,3,4,5,2,8] → [5, 7, 3, 1, 6, 4, 2, 2, 8]
      #同向
       1 def exchange(nums):
       2 
       3     i, j = 0, 1
       4     while i < j and j <= len(nums) - 1:
       5         if nums[i] & 1 == 0 and nums[j] & 1 == 1:
       6             nums[i], nums[j] = nums[j], nums[i]
       7         while nums[i] & 1 == 1:
       8             i += 1
       9             j += 1
      10         while (j <= len(nums) - 1) and nums[j] & 1 == 0:
      11             j += 1
      12 
      13     return nums

      #反向
       1 def exchange(nums):
       2 
       3     i, j = 0, len(nums) - 1
       4     while i < j:
       5         if nums[i] & 1 == 0 and nums[j] & 1 == 1:
       6             nums[i], nums[j] = nums[j], nums[i]
       7         while nums[i] & 1 == 1:
       8             i += 1
       9             j -= 1
      10         while (j <= len(nums) - 1) and nums[j] & 1 == 0:
      11             j -= 1
      12 
      13     return nums
      
      

       

       

       

      posted on 2020-08-24 10:41  dangdangA  閱讀(163)  評論(0)    收藏  舉報

      主站蜘蛛池模板: 免费视频欧美无人区码| 久久综合久中文字幕青草| 国产综合视频一区二区三区| 18禁超污无遮挡无码网址| 五大连池市| 国产最新AV在线播放不卡| 人妻系列无码专区免费| 红原县| 亚洲乱熟女一区二区三区| 日韩高清亚洲日韩精品一区二区| 九九综合九色综合网站| 人妻少妇精品视频三区二区 | 色综合国产一区二区三区| 久久久久亚洲av成人网址| 97精品伊人久久久大香线蕉| 日韩av不卡一区二区在线| 久久这里都是精品一区| 亚洲丶国产丶欧美一区二区三区| 亚洲最大天堂在线看视频| 国产午夜视频在线观看| 四虎精品国产精品亚洲精| 亚洲AV成人片不卡无码| 中文字幕色偷偷人妻久久| 伊人色综合九久久天天蜜桃| 国产成人午夜福利院| 北安市| 蜜桃一区二区三区免费看| 97色伦97色伦国产| 精品一区二区无码免费| 人妻蜜臀久久av不卡| 秦安县| 日韩av一区二区三区不卡| 国产叼嘿视频一区二区三区| 国产999久久高清免费观看| 日韩精品亚洲不卡一区二区| 精品无码成人片一区二区98| 午夜夜福利一区二区三区| 亚洲成人av在线系列| 午夜成人无码福利免费视频| 中文字幕无码不卡一区二区三区| 中文字幕亚洲日韩无线码|