人生苦短,我用python!
这次给大家带来的是python入门必会的七道题目中几道题目,我只给出我的思路,大家有更好的思路可以留言评论!谢谢!
***从排好序的数组里面,删除重复的元素,重复的元素最多只能出现两次***
nums = [1,1,1,1,1,1,2,2,2,2,3,3,3,3,3,4,4,4]
flag = 0
x = 0 - len(nums)
for i in range(len(nums)-1,0,-1):#一定要从后往前遍历列表 因为列表的内存自动进行增加或减少
if nums[i] == nums[i-1]:
flag = flag + 1 #设置标志 如果有两个连续的数字,就增加
if flag >= 2:
del nums[i] #如果有连续的三个的数字,就删除
# nums.remove(nums[i])
elif nums[i] != nums[i-1]: #遇到不一样的数字,就把标志设为0
flag = 0
print(nums)
***给定一个列表,把所有0移动到列表后面,同时保持非0元素的相对顺序****
a = [0,0,0,1,2,3,4]
for i in range(len(a)):
if a[i] == 0:
for j in range(i+1,len(a)):
if a[j] != 0:
a[i],a[j] = a[j],a[i]
break
print(a)
今天就先给出这两道题的答案,有更好方法的小伙伴可以私聊我!