80.Remove Duplicates from Sorted Array II(Medium)

Follow up for "Remove Duplicates":
What if duplicates are allowed at most twice?
給定一個(gè)有序的整數(shù)數(shù)列友酱,每個(gè)數(shù)最多只能出現(xiàn)兩次,然后去除多余的數(shù)洞渔,把剩下的數(shù)排在原數(shù)組的前面,并返回新數(shù)列的長度

  這雖然是個(gè)中等題凛膏,不過難度不大冠绢,唯一需要多考慮的就是在原數(shù)組前面排列新的數(shù)組

For example

Given sorted array nums = [1,1,1,2,2,3],
Your function should return length = 5, with the first five elements of nums being 1, 1, 2, 2 and 3. It doesn't matter what you leave beyond the new length.

My Solution

(Java) Version 1 Time: 1ms:

  做出的方法還是各種立flag,囤躁,沒什么多解釋的,就是遍歷一遍福铅,然后跳過重復(fù)多的萝毛,然后符合標(biāo)準(zhǔn)的就放到前面去,甚至都不用交換

public class Solution {
    public int removeDuplicates(int[] nums) {
        if (nums.length == 0)
            return 0;
        int count = 1, tempcount = 1, temp = nums[0], index = 1;
        for (int i = 1; i < nums.length; i++) {
            if (nums[i] == temp) {
                if (tempcount < 2) {
                    tempcount++;
                    nums[index] = nums[i];
                    index++;
                    count++;
                }
            } else {
                temp = nums[i];
                tempcount = 1;
                nums[index] = nums[i];
                index++;
                count++;
            }
        }
        return count;
    }
}

(Java) Version 2 Time: 0ms (By StefanPochmann):

  別人家的姿勢水平就是高很多滑黔,能如此簡單地解答笆包,關(guān)鍵在于題目中給出的是有序數(shù)列,所以后面的數(shù)一定是比前面的大略荡,或者說不同庵佣,就不用考慮后面還會(huì)有和前面相同數(shù)的情況

public int removeDuplicates(int[] nums) {
    int i = 0;
    for (int n : nums)
        if (i < 2 || n > nums[i-2])
            nums[i++] = n;
    return i;
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市汛兜,隨后出現(xiàn)的幾起案子巴粪,更是在濱河造成了極大的恐慌,老刑警劉巖粥谬,帶你破解...
    沈念sama閱讀 222,627評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件肛根,死亡現(xiàn)場離奇詭異,居然都是意外死亡漏策,警方通過查閱死者的電腦和手機(jī)派哲,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,180評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來掺喻,“玉大人芭届,你說我怎么就攤上這事储矩。” “怎么了喉脖?”我有些...
    開封第一講書人閱讀 169,346評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵椰苟,是天一觀的道長抑月。 經(jīng)常有香客問我树叽,道長,這世上最難降的妖魔是什么谦絮? 我笑而不...
    開封第一講書人閱讀 60,097評(píng)論 1 300
  • 正文 為了忘掉前任题诵,我火速辦了婚禮,結(jié)果婚禮上层皱,老公的妹妹穿的比我還像新娘性锭。我一直安慰自己,他們只是感情好叫胖,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,100評(píng)論 6 398
  • 文/花漫 我一把揭開白布草冈。 她就那樣靜靜地躺著,像睡著了一般瓮增。 火紅的嫁衣襯著肌膚如雪怎棱。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,696評(píng)論 1 312
  • 那天绷跑,我揣著相機(jī)與錄音拳恋,去河邊找鬼。 笑死砸捏,一個(gè)胖子當(dāng)著我的面吹牛谬运,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播垦藏,決...
    沈念sama閱讀 41,165評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼梆暖,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了掂骏?” 一聲冷哼從身側(cè)響起轰驳,我...
    開封第一講書人閱讀 40,108評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎芭挽,沒想到半個(gè)月后滑废,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,646評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡袜爪,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,709評(píng)論 3 342
  • 正文 我和宋清朗相戀三年蠕趁,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片辛馆。...
    茶點(diǎn)故事閱讀 40,861評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡俺陋,死狀恐怖豁延,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情腊状,我是刑警寧澤诱咏,帶...
    沈念sama閱讀 36,527評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站缴挖,受9級(jí)特大地震影響袋狞,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜映屋,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,196評(píng)論 3 336
  • 文/蒙蒙 一苟鸯、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧棚点,春花似錦早处、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,698評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至贬循,卻和暖如春咸包,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背甘有。 一陣腳步聲響...
    開封第一講書人閱讀 33,804評(píng)論 1 274
  • 我被黑心中介騙來泰國打工诉儒, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人亏掀。 一個(gè)月前我還...
    沈念sama閱讀 49,287評(píng)論 3 379
  • 正文 我出身青樓忱反,卻偏偏與公主長得像,于是被迫代替她去往敵國和親滤愕。 傳聞我的和親對(duì)象是個(gè)殘疾皇子温算,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,860評(píng)論 2 361

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