1. 程式人生 > >判斷重復數字,不使用集合和字典

判斷重復數字,不使用集合和字典

spa eating pri nonce 出現 pan number 多少 計數

隨機產生2組各10個數字的列表,要求

取值範圍[10,20],

統計20個數字中,多少不同的數字

2組比較,不重復的數字幾個,分別是

重復的數字幾個,分別是

以下方法為先開辟列表,再對應的數字的位置計數,不使用集合和字典

###repeated.3
import random
l = []#once
n = []#repeated
m = [0] * 20

for i in range(10):
    a = random.randrange(1,21)
    print({}.format(a),end =  )
    m[a-1] += 1
print()

for j in range(20):
    
if m[j]: if m[j] == 1: l.append(j + 1) else: n.append(j + 1) print(repeating number: {}\nonce number: {} .format(n,l))

使用比較後在相應的計數列表內相應位置加一,計算出數字出現的次數。

nums = [random.randint(1,20) for _ in range(10)]
l=[0]*len(nums)
seamnum = []
diffnum = []
for
i in range(len(nums)): if l[i] != 0: continue count=0 for j in range(i+1,len(nums)): if l[j] != 0: continue if nums[i] == nums[j]: l[j] += 1 count += 1 if count: count += 1 seamnum.append((nums[i],count))
else: diffnum.append(nums[i]) print(seamnum,diffnum)

判斷重復數字,不使用集合和字典