python第k序元素查找列表_【Python】第8次练习:列表——程序填空题 -合并队列、列表元素"零"的移动、列表逆序输出、第K序元素查找...

【Python】第8次练习:列表——程序填空题 -合并队列、列表元素"零"的移动、列表逆序输出、第K序元素查找

1、程序填空题 -合并队列

题目:某班男女两队同学各若干人,男生已按身高由低到高存放在列表中,女生身高需输入到一个列表。体育课排队欲由男、女两队合为一队。请保持从低到高的顺序不变,将合并队列的结果按格式"身高(性别)"输出。如下所示。

boy = [1.69, 1.72, 1.78, 1.83, 1.89]

girl = list(eval(input()))

#(1)

girl=sorted(girl)

print('男队身高:', end='')

for b in boy:

print(b, end=' ')

print('\n女队身高:', end='')

for g in girl:

print(g, end=' ')

print('\n合并后:', end='')

#(2)

i=0

j=0

while j

if boy[i] < girl[j]:

print(boy[i], '(男)', sep='', end = ' ')

i += 1

else:

print(girl[j], '(女)', sep='', end = ' ')

j += 1

while i < len(boy):

print(boy[i], '(男)', sep='', end = ' ')

i += 1

while j < len(girl):

print(girl[j], '(女)', sep='', end = ' ')

j +=1

2、列表元素"零"的移动

题目:对于一个列表,在保持非零元素相对顺序的同时,将元素中所有的数字0移动到末尾。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬例如,获得输入列表 [0, 1, 0, 3, 12],输出 [1, 3, 12, 0, 0]。

ls=eval(input())

lt1=[]

lt2=[]

for i in range(len(ls)):

if ls[i]==0:

lt1.append(0)

else:

lt2.append(ls[i])

print(lt2+lt1)

3、列表逆序输出

题目:建立如下列表并原样输出,并将列表中的数据逆序存放再次输出。a=[1,2,3,4,5,6,7]

a=[1,2,3,4,5,6,7]

print(a)

a.reverse()

print(a)

4、第K序元素查找

题目:在无排序的一个列表中查找第k个最大元素。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬例如, 给定3,2,1,5,6,4和k=2,返回5。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬注意: 假设k总是有效的,0 <= k <=数组的长度

a=list(eval(input()))

k=eval(input())

a=sorted(a)

a.reverse()

print(a[k-1])

点赞

收藏

分享

文章举报

蝎J

发布了13 篇原创文章 · 获赞 1 · 访问量 455

私信

关注

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值