合并列表python

问题描述:

让我们一起 - 合并列表 让a和b被排序(从小到大)可能长度不同的整数列表。 编写“合并”a和b以创建列表c的程序。列表c必须包含a和b的所有元素,并且还必须按排序(从小到大)顺序排列。 注意:您的程序可能不会使用列表c中的list方法sort(),或者以任何方式对列表c中的值进行排序。合并列表python

我写道:

from random import randint 
a=[randint(1,200) for i in range(20)] 
a.sort() 
b=[randint(1,100) for j in range(15)] 
b.sort() 
c=a.extend(b) 
print(c) 
+0

合并排序? http://www.personal.kent.edu/~rmuhamma/Algorithms/MyAlgorithms/Sorting/mergeSort.htm – 2013-03-06 03:27:54

+1

这只是一个普通的列表合并。甚至不需要合并分类。只需在每个步骤中将最小元素从列表的前面拉下来 - 方便,快捷。 – nneonneo 2013-03-06 03:28:21

+0

如果这是作业标记它,否则请至少尝试使这看起来像一个实际的问题! – jathanism 2013-03-06 03:32:53

如果你知道,无论ab进行排序,然后你可以看一下每个列表的头,比较值,然后你可以选择那些中的哪一个值是最小的。您可以通过一次构建一个元素来创建列表c,每次使用可用的最小整数,直到一个列表用完。然后只需附加其他列表的其余部分,就完成了。