题目:
写出排序的过程,给出2个有序的子序列,如何将已有序的子序列合并,得到完全有序的序列,复杂度越低越好。
题解:
def merge_sorted_subsequences(seq1, seq2):merged_sequence = []i, j = 0, 0while i < len(seq1) and j < len(seq2):if seq1[i] <= seq2[j]:merged_sequence.append(seq1[i])i += 1else:merged_sequence.append(seq2[j])j += 1while i < len(seq1):merged_sequence.append(seq1[i])i += 1while j < len(seq2):merged_sequence.append(seq2[j])j += 1return merged_sequence
if __name__ == '__main__':seq1 = [1, 3, 4, 5, 7]seq2 = [2, 4, 6, 8]merged = merge_sorted_subsequences(seq1, seq2)print(merged)