小編溫馨提示,今天是我們堅(jiān)持學(xué)習(xí)算法的第8天!一.題目 給定一個(gè)排序數(shù)組,,你需要在原地刪除重復(fù)出現(xiàn)的元素,,使得每個(gè)元素只出現(xiàn)一次,,返回移除后數(shù)組的新長度,。
二.解決方案
數(shù)組完成排序后,我們可以放置2個(gè)指針i和j,其中i是慢指針,而j是快指針.只要nums[i] = nums[j],我們就增加j,跳過此重復(fù)項(xiàng). 當(dāng)我們遇到nums[j] != nums[i]時(shí),跳過重復(fù)項(xiàng)的運(yùn)行已經(jīng)結(jié)束,因此我們必須把它nums[j]的值復(fù)制到nums[i+1],然后遞增i,繼續(xù)重復(fù)相同的過程,直到j(luò)到底數(shù)組末尾. 三.代碼實(shí)現(xiàn)Java Code 四.復(fù)雜度分析
修煉自己,比到處迎合別人重要的多! '一起打卡學(xué)習(xí)吧!' |
|