Python 排序列表插入
Python sorted list insertion
我需要帮助完成 python 中的练习,我必须填写预先存在的代码。
该函数接受一个整数和一个排序列表,它插入值 a
然后 returns 新列表,我必须用正确答案替换点
看起来像这样:
def insert(a, tab):
l = list(tab)
l.append(a)
i = ...
while a < ... :
l[i+1] = ...
l[i] = a
i = ...
return l
>>> insert(3,[1,2,4,5])
[1, 2, 3, 4, 5]
感谢您的帮助。
从上面的答案中汲取灵感,我会说一些也复制列表而不是覆盖它的内容,如下所示
def insert_and_sort(a, tab):
newtab = list(tab)
newtab.append(a)
sort(newtab)
return newtab
def insert(a, tab):
l = list(tab)
l.append(a)
i = len(l) - 2
while a < l[i] and i >= 0:
l[i+1] = l[i]
l[i] = a
i -= 1
return l
免责声明 - 这里没有新内容。仅供参考,使变量更具描述性并简化代码。 (供以后阅读,或我自己)
def insert(x, lst):
''' lst is a sorted list'''
''' bubble sort - '''
lst.append(x) # to the end
i = len(lst) - 2
while i >=0 and lst[i] > x:
lst[i+1], lst[i] = lst[i], x
i -= 1
return lst
insert(3,[1,2,4,5])
[1, 2, 3, 4, 5]
很简单,我们甚至可以只替换其中一个 ...
:
def insert(a, tab):
l = list(tab)
l.append(a)
i = ...
while a < (l.sort() or a) :
l[i+1] = ...
l[i] = a
i = ...
return l
正在测试:
>>> insert(3,[1,2,4,5])
[1, 2, 3, 4, 5]
我需要帮助完成 python 中的练习,我必须填写预先存在的代码。
该函数接受一个整数和一个排序列表,它插入值 a
然后 returns 新列表,我必须用正确答案替换点
看起来像这样:
def insert(a, tab):
l = list(tab)
l.append(a)
i = ...
while a < ... :
l[i+1] = ...
l[i] = a
i = ...
return l
>>> insert(3,[1,2,4,5])
[1, 2, 3, 4, 5]
感谢您的帮助。
从上面的答案中汲取灵感,我会说一些也复制列表而不是覆盖它的内容,如下所示
def insert_and_sort(a, tab):
newtab = list(tab)
newtab.append(a)
sort(newtab)
return newtab
def insert(a, tab):
l = list(tab)
l.append(a)
i = len(l) - 2
while a < l[i] and i >= 0:
l[i+1] = l[i]
l[i] = a
i -= 1
return l
免责声明 - 这里没有新内容。仅供参考,使变量更具描述性并简化代码。 (供以后阅读,或我自己)
def insert(x, lst):
''' lst is a sorted list'''
''' bubble sort - '''
lst.append(x) # to the end
i = len(lst) - 2
while i >=0 and lst[i] > x:
lst[i+1], lst[i] = lst[i], x
i -= 1
return lst
insert(3,[1,2,4,5])
[1, 2, 3, 4, 5]
很简单,我们甚至可以只替换其中一个 ...
:
def insert(a, tab):
l = list(tab)
l.append(a)
i = ...
while a < (l.sort() or a) :
l[i+1] = ...
l[i] = a
i = ...
return l
正在测试:
>>> insert(3,[1,2,4,5])
[1, 2, 3, 4, 5]