1. 程式人生 > >用python 合併兩個已經排好序的陣列 並且新陣列不能有重複的元素

用python 合併兩個已經排好序的陣列 並且新陣列不能有重複的元素

'''
題目一:合併兩個已經排好序的陣列

思路是遍歷兩個陣列,分別比較每個元素, 將較小的新增到新的數組裡,比較完短的陣列後將長的陣列的元素直接拷貝到新陣列即可

我寫完後面試官說有一個問題 就是新陣列有重複的資料 當時想的是再給新陣列排序 去掉重複陣列 他不滿意

今天查了一下最佳答案是新增一個判斷條件 如果兩個元素相同 continue
'''
class Merge():
   
def MergeArr(arr1, arr2):
        result =[]
        length1 = len(
arr1)
        lenght2 = len(arr2)
       
if(length1 ==

0):
            result =arr2
       
elif(lenght2 ==0):
            result =
arr1
       
while(length1 !=0 && lenght2 !=0):
           
for i in range (length1):
               
for j in range(lenght2):
                   
if (arr1[i]<arr2[j]):
                       result = result.append(
arr1[i])
                    
elif (arr1[i]>arr2[j]):
                        result = result.append(
arr1[j])

                    Else (arr1[i]==arr2[j]):

                        continuereturn result
                
if i == length1:
                    result = result.append(arr2[j-i])
                
elif j ==lenght2:
                    result = result.append(

arr1[i-j])
            
return result