Python 如何以升序合并两个已排序的列表,而不在最终列表上使用.sort()?
除了最后一个,我不知道为什么Python 如何以升序合并两个已排序的列表,而不在最终列表上使用.sort()?,python,merge,Python,Merge,除了最后一个,我不知道为什么 import random def merge_lists(a,b): lst=[0 for i in range(len(a)+len(b))] print(lst) a.sort() b.sort() print(a) print(b) j=0 k=0 for i in range(0, len(lst)): if j<len(a) and k<len(b):
import random
def merge_lists(a,b):
lst=[0 for i in range(len(a)+len(b))]
print(lst)
a.sort()
b.sort()
print(a)
print(b)
j=0
k=0
for i in range(0, len(lst)):
if j<len(a) and k<len(b):
if a[j]<b[k]:
lst[i]=a[j]
j+=1
else:
lst[i]=b[k]
k+=1
print(lst)
print(i)
print(j)
def main():
n=5
m=8
x=lst1=[random.randrange(0,50) for i in range(n)]
y=lst2=[random.randrange(0,50) for i in range(m)]
print("unsorted list 1 is", lst1)
print("unsorted list 2 is", lst2)
merge_lists(x,y)
main()
随机导入
def合并列表(a、b):
lst=[0表示范围内的i(len(a)+len(b))]
打印(lst)
a、 排序()
b、 排序()
印刷品(a)
印刷品(b)
j=0
k=0
对于范围(0,len(lst))内的i:
如果j如果jim不允许在sort之后使用任何预定义函数,那么为什么要在前两个列表中使用print
、range
和len
?对不起,预定义的列表函数,sort()除外。所以我不允许使用append()、pop()等。所以你必须使用列表,但你不能使用任何常用的列表方法?不允许使用append
会使代码变得不必要的复杂,因此,如果这真的是对您的作业的限制,那么它实际上有害于教育,我认为。。。