【python】查找數(shù)組中元素的最大值和最小值炒瘸?

題目:給定數(shù)組arr淤堵,找出數(shù)組中的最大值和最小值。其中顷扩,數(shù)組中的值兩兩各不相同拐邪。

分析:采用分治法。將數(shù)組兩兩一對(duì)分組隘截,如果數(shù)組元素個(gè)數(shù)為奇數(shù)個(gè)扎阶,就把最后一個(gè)元素單獨(dú)分為一組,偶數(shù)個(gè)則不用婶芭,然后分別對(duì)每一組中相鄰的兩個(gè)元素進(jìn)行比較东臀,把兩者中元素值較小的數(shù)放在數(shù)組的左邊,值大的數(shù)放在數(shù)組的右邊犀农,比較n/2此就能夠?qū)?shù)組分組完成惰赋。為此,最小值一定在每一組的左邊部分井赌,最大值一定在每一組的右邊部分谤逼,接著只需要在每一組的左邊部分查找最小值,右邊部分查找最大值仇穗,查找分別需要比較n/2-1次和n/2-1次筝野∧啵總共大約為n/2*3。

code:

def getMaxAndMin(arr):

? ? if arr is None:

? ? ? ? print("參數(shù)不合法")

? ? ? ? return

? ? # 兩兩分組痊夭,把較小的數(shù)放在數(shù)組的左半部分舞丛,把較大的數(shù)放在右半部分

? ? i = 0

? ? while i < (len(arr) - 1):

? ? ? ? if arr[i] > arr[i + 1]:

? ? ? ? ? ? temp = arr[i]

? ? ? ? ? ? arr[i] = arr[i + 1]

? ? ? ? ? ? arr[i + 1] = temp

? ? ? ? i += 2

? ? # 在各個(gè)分組的左半部分查找最小值

? ? minNum = arr[0]

? ? i = 2

? ? while i < len(arr):

? ? ? ? if arr[i] > minNum:

? ? ? ? ? ? minNum = arr[i]

? ? ? ? i += 2

? ? maxNum = arr[1]

? ? # 在各個(gè)分組的右半部分查找最大值

? ? i = 3

? ? while i < len(arr):

? ? ? ? if arr[i] > maxNum:

? ? ? ? ? ? maxNum = arr[i]

? ? ? ? i += 2

? ? # 如果數(shù)組中元素個(gè)數(shù)是奇數(shù)哥耘子,最后一個(gè)元素被分為一組果漾,需要與其比較再確定最大最小值。

? ? if len(arr) % 2 == 1:

? ? ? ? if maxNum < arr[len(arr) - 1]:

? ? ? ? ? ? maxNum = arr[len(arr) - 1]

? ? ? ? if minNum > arr[len(arr) -1]:

? ? ? ? ? ? minNum = arr[len(arr) -1]

? ? return maxNum, minNum


if __name__ == "__main__":

? ? arr = [7, 3, 19, 40, 4, 7, 1]

? ? print(getMaxAndMin(arr))

程序的運(yùn)行結(jié)果為:40谷誓, 1


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末绒障,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子捍歪,更是在濱河造成了極大的恐慌户辱,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,252評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件糙臼,死亡現(xiàn)場(chǎng)離奇詭異庐镐,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)变逃,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,886評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門必逆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人揽乱,你說我怎么就攤上這事名眉。” “怎么了凰棉?”我有些...
    開封第一講書人閱讀 168,814評(píng)論 0 361
  • 文/不壞的土叔 我叫張陵损拢,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我渊啰,道長(zhǎng)探橱,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,869評(píng)論 1 299
  • 正文 為了忘掉前任绘证,我火速辦了婚禮隧膏,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘嚷那。我一直安慰自己胞枕,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,888評(píng)論 6 398
  • 文/花漫 我一把揭開白布魏宽。 她就那樣靜靜地躺著腐泻,像睡著了一般。 火紅的嫁衣襯著肌膚如雪队询。 梳的紋絲不亂的頭發(fā)上派桩,一...
    開封第一講書人閱讀 52,475評(píng)論 1 312
  • 那天,我揣著相機(jī)與錄音蚌斩,去河邊找鬼铆惑。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的员魏。 我是一名探鬼主播丑蛤,決...
    沈念sama閱讀 41,010評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼撕阎!你這毒婦竟也來了受裹?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,924評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤虏束,失蹤者是張志新(化名)和其女友劉穎棉饶,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體魄眉,經(jīng)...
    沈念sama閱讀 46,469評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡砰盐,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,552評(píng)論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了坑律。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片岩梳。...
    茶點(diǎn)故事閱讀 40,680評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖晃择,靈堂內(nèi)的尸體忽然破棺而出冀值,到底是詐尸還是另有隱情,我是刑警寧澤宫屠,帶...
    沈念sama閱讀 36,362評(píng)論 5 351
  • 正文 年R本政府宣布列疗,位于F島的核電站,受9級(jí)特大地震影響浪蹂,放射性物質(zhì)發(fā)生泄漏抵栈。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,037評(píng)論 3 335
  • 文/蒙蒙 一坤次、第九天 我趴在偏房一處隱蔽的房頂上張望古劲。 院中可真熱鬧,春花似錦缰猴、人聲如沸产艾。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,519評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽闷堡。三九已至,卻和暖如春疑故,著一層夾襖步出監(jiān)牢的瞬間杠览,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,621評(píng)論 1 274
  • 我被黑心中介騙來泰國(guó)打工纵势, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留倦零,地道東北人误续。 一個(gè)月前我還...
    沈念sama閱讀 49,099評(píng)論 3 378
  • 正文 我出身青樓吨悍,卻偏偏與公主長(zhǎng)得像扫茅,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子育瓜,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,691評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • 第四天 數(shù)組【悟空教程】 第04天 Java基礎(chǔ) 第1章數(shù)組 1.1數(shù)組概念 軟件的基本功能是處理數(shù)據(jù)葫隙,而在處理數(shù)...
    Java幫幫閱讀 1,603評(píng)論 0 9
  • 第五章******************************************************...
    fastwe閱讀 685評(píng)論 0 0
  • 牛客網(wǎng)上面有一個(gè)關(guān)于js的自測(cè)躏仇,然后我看了一下原作者的github恋脚,記錄一下解題過程吧。所以焰手,對(duì)數(shù)組操作糟描,不改變?cè)?..
    進(jìn)擊的前端閱讀 588評(píng)論 0 1
  • Javascript有很多數(shù)組的方法,有的人有W3C的API书妻,還可以去MDN上去找船响,但是我覺得API上說的不全,M...
    頑皮的雪狐七七閱讀 4,095評(píng)論 0 6
  • 如果煙花易殘躲履, 你就在心頭上期盼月圓 如果桃李無言 你就在夢(mèng)深處峰回路轉(zhuǎn) 如果孤獨(dú)如山 你就在文字里自我排遣 生活...
    關(guān)月樓閱讀 437評(píng)論 10 22