已解决
python 练习 在列表元素中合适的位置插入 输入值
来自网友在路上 168868提问 提问时间:2023-11-01 15:41:20阅读次数: 68
最佳答案 问答题库688位专家为你答疑解惑
目的: 有一列从小到大排好的数字元素列表, 现在想往其插入一个值,要求: 大于右边数字小于左边数字 列表元素: [1,4,6,13,16,19,28,40,100] # 方法: 往列表中添加一个数值,其目的方便元素位置往后移动一位, 因为如果我们找到了合适的位置,目前这个位置有元素在占着,我们需要将其适合位置后的每一个元素,往后挪动一位,如果不在最后添加一个元素,而且这个元素必须是 0 ,会发生栈缺失值的现象 其实我们就是做了 a[i] = a[i-1] 元素100 消失了 执行 a[i] = a[i-1] 如果我们执行了从后往前迭代,a【9】 = a[8] 40 覆盖了100
a = [1,4,6,13,16,19,28,40,100,0]
print("befor:")
for i in range(0,len(a) - 1): print(a[i],end="\t")
print()
number = int(input("请输入你想要插入的数:"))local = 0
for i in range(len(a)-2,-1,-1): # 第二个-1 指的是步长为1不过是从右往左取if number > a[i]:local = i+1 # local 就是我们的插入点break
# 移动位置
for i in range(len(a)-1,local,-1): # local-1 是因为 range() 函数总是左闭右开# 如果写成local 只会取到 插入紧跟后面的一个数,本来插入点在6后面,因为range() 函数的原因就# 会将插入点选到了13后面a[i] = a[i-1] # 从插入点每一个数都向后移动了1位, i 最后存在的位置只能是插入点
a[local] = number # local 是我们的插入点 没执行这条语句之前 a[local] = a[local-1], 现在将插入的值赋到 替换点print(a)
学习资料: 转载: 【三天练完!学习Python必刷的100道经典实战练习真题,没练等于白学!!!】 https://www.bilibili.com/video/BV1SG411H7e1/?p=36&share_source=copy_web&vd_source=d0ef3d08fdeef1740bab49cdb3e96467
查看全文
99%的人还看了
相似问题
- 〖大前端 - 基础入门三大核心之JS篇㊲〗- DOM改变元素节点的css样式、HTML属性
- CSS中常用的伪元素选择器
- XmlElement注解在Java的数组属性上,以产生多个相同的XML元素
- Web 自动化神器 TestCafe(二)—元素定位篇
- 代码随想录算法训练营第一天|数组理论基础,704. 二分查找,27. 移除元素
- 代码随想录算法训练营第五十九天 | LeetCode 739. 每日温度、496. 下一个更大元素 I
- JAXB:用XmlElement注解复杂类型的Java属性,来产生多层嵌套的xml元素
- Arcgis js Api日常天坑问题3——加载geojson图层,元素无属性
- 〖大前端 - 基础入门三大核心之JS篇㊳〗- DOM访问元素节点
- 力扣.82删除链表中的重复元素(java语言实现)
猜你感兴趣
版权申明
本文"python 练习 在列表元素中合适的位置插入 输入值":http://eshow365.cn/6-29402-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!
- 上一篇: 4.1 继承
- 下一篇: Python中的Scrapy库