Python 练习实例39
题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
程序分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,依次后移一个位置。
程序源代码:
实例(Python 2.0+)
#!/usr/bin/python
# -*- coding: UTF-8 -*-
if __name__ == '__main__':
# 方法一 : 0 作为加入数字的占位符
a = [1,4,6,9,13,16,19,28,40,100,0]
print '原始列表:'
for i in range(len(a)):
print a[i],
number = int(raw_input("\n插入一个数字:\n"))
end = a[9]
if number > end:
a[10] = number
else:
for i in range(10):
if a[i] > number:
temp1 = a[i]
a[i] = number
for j in range(i + 1,11):
temp2 = a[j]
a[j] = temp1
temp1 = temp2
break
print '排序后列表:'
for i in range(11):
print a[i],
以上实例输出结果为:
原始列表: 1 4 6 9 13 16 19 28 40 100 0 插入一个数字: 7 排序后列表: 1 4 6 7 9 13 16 19 28 40 100
啊香魂
wei***1370@126.com
参考解法:
啊香魂
wei***1370@126.com
鱼尾巴的鱼
824***174@qq.com
参考地址
参考方案:
鱼尾巴的鱼
824***174@qq.com
参考地址
animo
z@g***cc
参考方法:
animo
z@g***cc
等一个人
252***465@qq.com
参考解法:
等一个人
252***465@qq.com
JohnLee
372***369@qq.com
Python3 参考方法:
JohnLee
372***369@qq.com
dayu
923***317@qq.com
参考方法:
dayu
923***317@qq.com
朦胧
253***5732@qq.com
Python3 测试参考:
朦胧
253***5732@qq.com
Think_dfrent
iwa***aoiy@live.com
Python3实例,新建一个列表存储插入后的数组,先将原数组元素一一与该数比较,把较小值插入新列表,若该数已被插入,则将原数组剩余的数插入新列表,若原数组都被遍历完仍未插入,则将该数插到新列表最后
Think_dfrent
iwa***aoiy@live.com
colinshi
col***shi@hotmail.com
参考方法:
colinshi
col***shi@hotmail.com
大大大大大大大熊
382***076@qq.com
排序是从小到大:
大大大大大大大熊
382***076@qq.com
py托马斯
152***4159@qq.com
参考方法:
测试结果:
py托马斯
152***4159@qq.com