问题描述:
Python合并两个有序不重复的列表,并保持原来的顺序。
def sorted_list(A, B):
sorted_lst = list()
index_A = 0
index_B = 0
while True:
if index_A == len(A) - 1 or index_B == len(B) - 1:
break
if A[index_A] > B[index_B]:
sorted_lst.append(B[index_B])
index_B += 1
elif A[index_A] == B[index_B]:
sorted_lst.append(A[index_A])
index_A += 1
index_B += 1
elif A[index_A] < B[index_B]:
sorted_lst.append(A[index_A])
index_A += 1
if index_A == len(A) - 1:
sorted_lst.extend(B[index_B:])
elif index_B == len(B) - 1:
sorted_lst.extend(A[index_A:])
return sorted_lst
def main():
print sorted_list([1, 2, 3, 4], [2, 3, 4, 6])
main()