- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
中级Python编程题(10道)
中级10道
【中级1】给定⻓度为m的⾮重复数组p,以及从其中取n(nm)个数字组成
新的⼦数组q。现要对p进⾏排序,要求:q在数组的最前⽅,其余数字按从⼩到
⼤的顺序依次排在后⾯
输⼊样例:
q=[3,5,4]
p=[5,4,3,2,1]
输出样例:
35412
参考答案:
为了让q在数组的最前⽅,我们需要将q中的数字在排序后的p数组中都
放在第⼀个。
为了让其余数字按从⼩到⼤的顺序依次排在后⾯,我们需要先将p中剩余
的数字按从⼩到⼤排序,再将这些数字放在q后⾯。
实现起来,我们可以将p中的数字全部提取出来,然后对p中的数字进⾏
排序,排序后的数组记为sorted_p。
接着,我们可以创建⼀个新的数组result,将q中的数字依次放⼊
result。
最后,我们遍历sorted_p,将sorted_p中不在q中的数字依次放⼊
result。
q=[3,5,4]
p=[5,4,3,2,1]
#对p中的数字进⾏排序
sorted_p=sorted(p)
#创建⼀个空的列表(数组)result
result=[]
#先把q中的数字依次放⼊result
foreleinq:
result.append(ele)
#遍历⼀下排好序的p,也即sorted_p,将sorted_p中不在q中的元素依次放到result
fornuminsorted_p:
Python编程题(10道)1
ifnumnotinq:
result.append(num)
#最后,输出结果
print(result)
封装成函数:
defmy_sort(p,q):
#第⼀步,对p进⾏排序
sorted_p=sorted(p)
#第⼆步,创建⼀个空列表,⽤于保存按要求的排序结果
result=[]
#先把q⾥⾯的元素都放在result⾥⾯
foriteminq:
result.append(item)
#再把sorted_p中剩下的元素append到result⾥⾯
foriteminsorted_p:
ifitemnotinq:
result.append(item)
returnresult
#测试
p=[5,4,3,2,1]
文档评论(0)