def merge(a, b):
"""合併2個有序陣列,預設a,b都是從小到大的有序陣列
"""#1.臨時變數
i, j = 0, 0 #分別標記2個陣列的起始位置
na, nb = len(a), len(b) #分別標記2個陣列的長度
temp = #臨時存放空間
#2.只要2個陣列不為空:比較大小a[i]a[j],依次填入temp
while i<=na-1 and j<=nb-1:
if a[i] <= b[j]:
i+=1
else:
j+=1
#3.判斷哪個陣列還有剩餘
if i<=na-1:
start = i
end = na-1
#4.將剩餘部分新增到temp中
temp.extend(a[start:end+1])
else:
start = j
end = nb-1
temp.extend(b[start:end+1])
#5.返回合併的新陣列
return temp
a = [1,2,4,6,9]
b = [5,8,10,22]
mergearr = merge(a,b)
兩個有序陣列合併
題目描述 已知陣列a中有m個按公升序排列的元素,陣列b中有n個按降序排列的元素,程式設計將a與b中的所有元素按降序存入陣列c中。輸入輸入有兩行,第一行首先是乙個正整數m,然後是m個整數 第二行首先是乙個正整數n,然後是n個整數,m,n均小於等於1000000。輸出輸出合併後的m n個整數,資料之間用...
C 兩個有序陣列合併
源自劍指offer中的思考題,有序陣列a b,a有足夠空間容納b,將a,b按順序排列。思路 也是用兩個指標從尾部開始進行依次比較,較大的放在新陣列的後邊,然後指標依次轉移。1.la,lb分別指向a和b的尾部,index指向融合陣列的尾部 2.然後比較,大的放在index出,index向前移動一位,然...
1124 兩個有序陣列合併
time limit 1 sec memory limit 128 mb submit 6260 solved 2262 submit status web board 已知陣列a中有m個按公升序序排列的元素,陣列b中有n個降序排列的元素,程式設計將a與b中的所有元素按降序存入陣列c中。輸入有兩行,...