题解 | #学生基本信息输入输出#

有序序列插入一个数

http://www.nowcoder.com/practice/74486aec6fe14d44b509efabf265ee66

'''方法一
# 直接新增,然后重新全部利用list sort()排序功能
total=input()
list=list(map(int,input().split()))
in_num=int(input())
list.append(in_num)
list.sort()
for each in list:
    print(each,end=" ")
'''
#方法二 有错,直接找位置插入(这里存在一个问题,方法三中的特例——插入的数最大)
total=input()
list=list(map(int,input().split()))
in_num=int(input())
for i in range(len(list)):
    if list[i]>in_num:
        list[i-1].insert(in_num)
        break
for each in list:
    print(each,end=" ")

# 方法二纠正 如果最后的数一直不大于插入的数(也就是插入的数最大,那么就直接跟在最后)
total=input()
list=list(map(int,input().split()))
in_num=int(input())
for i in range(len(list)):
    if list[i]>in_num:
        list.insert(i,in_num)
        break
if list[len(list)-1]<=in_num:
        list.append(in_num)
for each in list:
    print(each,end=" ")
全部评论

相关推荐

点赞 评论 收藏
分享
刷牛客的我很豁达:你是不是对算法有什么误解,你没手握两篇顶刊顶会,还想搞算法岗,有顶刊顶会在算法岗算才入门
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务