尋找水王1 0

2022-08-27 15:27:08 字數 1004 閱讀 7826

一、設計思路

輸入字串,將數字識別出來,對數字進行逐個遍歷

建立字典,便利的同時,如果字典裡沒有這個數字,建立相應的key,同時賦值1

如果已存在,則對相應key值+1

最後對字典遍歷,尋找最大key值

二、**

#print "

queen

"#writher gu peng

#edit date

20160518

str1='

2 4 2 5 6 2 3 2 2 2

'print

"please input number array

"str1=raw_input()

str1=str1.split()

print str1

array=

print array

for i in

str1:

if(array.has_key(i)):

array[i] = array[i]+1

else

: array[i] = 1

print array

max_str='0'

max_amount=0

for i in

array:

if(array[i]>max_amount):

max_str=i

max_amount=array[i]

print

"water king

",max_str

三、截圖

四、專案計畫日誌(單位:h):

聽課編寫程式

閱讀相關書籍

網上查詢資料

日總計周一20

02周二0

1001

週三020

02

尋找發帖「水王」

分析與解法 首先想到的是乙個最直接的方法,我們可以對所有id進行排序。然後再掃瞄一遍排好序的id列表,統計各個id出現的次數。如果某個id出現的次數超過總數的一半,那麼就輸出這個id。這個演算法的時間複雜度為o n log2 n n 如果id列表已經是有序的,還需要掃瞄一遍整個列表來統計各個id出現...

尋找發帖水王

首先想到的是乙個最直接的方法,我們可以對所有id進行排序。然後再掃瞄一遍排好序的id列表,統計各個id出現的次數。如果某個id出現的次數超過總數的一半,那麼就輸出這個id。這個演算法的時間複雜度為o n log2 n n 如果id列表已經是有序的,還需要掃瞄一遍整個列表來統計各個id出現的次數嗎?如...

尋找發帖「水王」

題目 解法1 對所有id排序,因為該id出現的次數超過總數的一半,對有序的序列,第n 2項即為所求id。解法2 每次刪除兩個不同的id,那麼剩下的id列表中,水王 的id次數仍然超過總數的一半。可以通過不斷重複這個過程,把id列表中的id總數降低,從而得到答案。總的時間複雜度只有o n 且只需要常熟...