中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

使用Python怎么合并兩個有序數組

發布時間:2021-03-18 17:29:18 來源:億速云 閱讀:534 作者:Leah 欄目:開發技術

這期內容當中小編將會給大家帶來有關使用Python怎么合并兩個有序數組,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

思路

按位循環比較兩個數組,較小元素的放入新數組,下標加一(注意,較大元素對應的下標不加一),直到某一個下標超過數組長度時退出循環

假設兩個源數組的長度不一樣,那么假設其中短的數組用完了,即全部放入到新數組中去了,那么長數組中剩下的那一段就可以直接拿來放入到新數組中去了。

#coding=utf-8
#合并數據
test1 = [1,2,5,7,9]
test2=[2,4,6,8,10,11,34,55]
def mergetest(test1,test2):
  result =[]
  len1=len(test1)
  len2=len(test2)
  i=0
  j=0
  while i<len1 and j<len2:
    if test1[i]<=test2[j]:
      result.append(test1[i])
      i+=1
    else:
      result.append(test2[j])
      j+=1
  if i<len1:
    for z in range(i+1,len1):
      result.append(test1[z])
  elif j<len2:
    for z in range(j+1,len2):
      result.append(test2[z])
  return result
print mergetest(test1,test2)

運行結果:

[1, 2, 2, 4, 5, 6, 7, 8, 9, 11, 34, 55]

add:鏈表情況下合并

def merge_link(link1,link2):
  head = single_link(0)
  first = head
  while link1!=None and link2!=None:
    if l1.val<=l2.val:
      head.next =l1
      l1=l1.next
    else:
      head.next=l2
      l2=l2.next
    head=head.next
  if l1!=None:
    head.next=l1
  elif l2!=None:
    head.next=lw
  return first.next

上述就是小編為大家分享的使用Python怎么合并兩個有序數組了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

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

AI

鄱阳县| 堆龙德庆县| 桑植县| 叙永县| 延津县| 瑞安市| 龙陵县| 兴山县| 抚顺县| 资中县| 夏津县| 罗甸县| 固阳县| 上饶市| 会同县| 洱源县| 武清区| 印江| 丰台区| 汤原县| 马山县| 潜江市| 东安县| 淮北市| 武强县| 紫云| 陇川县| 会东县| 夹江县| 广饶县| 依安县| 海原县| 富顺县| 汤原县| 普兰县| 连城县| 马公市| 浙江省| 延津县| 宜兰县| 丰镇市|