414. Third Maximum Number 第三大元素

Given a non-empty array of integers, return the third maximum number in this array. If it does not exist, return the maximum number. The time complexity must be in O(n).
Example 1:
Input: [3, 2, 1]
Output: 1
Explanation: The third maximum is 1.

Example 2:
Input: [1, 2]
Output: 2
Explanation: The third maximum does not exist, so the maximum (2) is returned instead.

Example 3:
Input: [2, 2, 3, 1]
Output: 1
Explanation: Note that the third maximum here means the third maximum distinct number.
Both numbers with value 2 are both considered as second maximum.

給定一非空整數(shù)數(shù)組,返回其第三小的元素退渗,若不存在則返回最大的數(shù)脆炎。算法時間控制在O(n)。這里重復(fù)的數(shù)字視為一個氓辣。


思路
一般選擇問題,選第三大袱蚓。
直接進(jìn)行掃描钞啸,記錄第三大或最大的做法存在如下錯誤:當(dāng)若使用int型變量記錄元素,當(dāng)?shù)谌笄『脼镮NT_MIN時將出現(xiàn)錯誤喇潘,因?yàn)闊o法判定這里的INT_MIN是掃描出的第三大還是沒找到第三大而留下的變量初值体斩。
正確的做法是使用set,利用set元素排列有序的特性颖低。

class Solution {
public:
    int thirdMax(vector<int>& nums) {
        set<int> top3;
        for (int num : nums) {
            top3.insert(num);
            if (top3.size() > 3)
                top3.erase(top3.begin());
        }
        return top3.size() == 3 ? *top3.begin() : *top3.rbegin();
    }
};
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末絮吵,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子忱屑,更是在濱河造成了極大的恐慌蹬敲,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件莺戒,死亡現(xiàn)場離奇詭異伴嗡,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)从铲,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進(jìn)店門瘪校,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事阱扬∑茫” “怎么了?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵麻惶,是天一觀的道長馍刮。 經(jīng)常有香客問我,道長用踩,這世上最難降的妖魔是什么渠退? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮脐彩,結(jié)果婚禮上碎乃,老公的妹妹穿的比我還像新娘。我一直安慰自己惠奸,他們只是感情好梅誓,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著佛南,像睡著了一般梗掰。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上嗅回,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天及穗,我揣著相機(jī)與錄音,去河邊找鬼绵载。 笑死埂陆,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的娃豹。 我是一名探鬼主播焚虱,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼懂版!你這毒婦竟也來了鹃栽?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤躯畴,失蹤者是張志新(化名)和其女友劉穎民鼓,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蓬抄,經(jīng)...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡摹察,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了倡鲸。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片供嚎。...
    茶點(diǎn)故事閱讀 38,163評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出克滴,到底是詐尸還是另有隱情逼争,我是刑警寧澤,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布劝赔,位于F島的核電站誓焦,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏着帽。R本人自食惡果不足惜杂伟,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望仍翰。 院中可真熱鬧赫粥,春花似錦、人聲如沸予借。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽灵迫。三九已至秦叛,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間瀑粥,已是汗流浹背挣跋。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留狞换,地道東北人浆劲。 一個月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像哀澈,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子度气,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,925評論 2 344

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

  • 背景 一年多以前我在知乎上答了有關(guān)LeetCode的問題, 分享了一些自己做題目的經(jīng)驗(yàn)割按。 張土汪:刷leetcod...
    土汪閱讀 12,724評論 0 33
  • 觀察的周圍的環(huán)境,周邊的人磷籍,覺得好無聊啊适荣,而然我個人的性格總是和他們?nèi)莶坏揭黄鹑ァ:懿幌矚g這樣的環(huán)境(在有限...
    一訪文閱讀 623評論 0 6
  • 起因 進(jìn)入雙臣已經(jīng)一個月時間院领,也了解了公司大概的情況弛矛。隨著企業(yè)建設(shè)需求的不斷升級,更為簡化員工的工作比然,避免重復(fù)工作...
    胡金龍閱讀 1,399評論 0 0
  • 一查賬丈氓,你就有風(fēng)險:這三大稅務(wù)問題須重點(diǎn)關(guān)注! 第一:往來問題 1公司出資購買房子車子,權(quán)利人卻寫成股東 實(shí)際工作...
    Dflower閱讀 90評論 0 0