|
发表于 2023-7-24 20:59:46
|
显示全部楼层
做作业,然后发现求解出现第二多次数的元素出现了问题,请教各位大神应该怎么改呢?
nums = []
while True:
t = input("请输入一个数字以构成序列(STOP结束):")
if t == "STOP":
break
else:
nums.append(t)
major1 = nums[0]
count1 = 0
for each in nums:
if count1 == 0:
major1 = each
if each == major1:
count1 += 1
else:
count1 -= 1
if nums.count(major1) > len(nums) // 3:
print(major1)
nums.sort()
m = nums.index(major1)
n = m + nums.count(major1)
del nums[m:n]
major2 = nums[0]
count2 = 0
for each in nums:
if count2 == 0:
major2 = each
if each == major2:
count2 += 1
else:
count2 -= 1
if nums.count(major2) > len(nums) // 2:
print(major2)
print("占比数量最多的两个元素是:", major1, major2, end='') |
|