四月二十五號(hào)(中等總結(jié)1)

348. Design Tic-Tac-Toe: 看似簡(jiǎn)單,但是如果track整個(gè)board就會(huì)TLE,還是需要track部分值

357. Count Numbers with Unique Digits: 這題可以用兩種方法做,一種dp,就直接推導(dǎo)公式,一種是backtracking,dp還好想一些, backtracking沒(méi)有做,可以試試

439. Ternary Expression Parser: 最后一題,做完了把這兩天的總結(jié)一下,寫在下面。這題是stack,只是要逆序來(lái)loop原本的array

總結(jié):

544. Output Contest Matches:我是用遞歸做的,但是可以用iterative的方法來(lái)做,這樣的話就是把每一層改變成新的值,對(duì)于遞歸來(lái)說(shuō)只要找好它的終止條件就可以了。338. Counting Bits:這題用DP做比較簡(jiǎn)單,邏輯比較清晰。280. Wiggle Sort:我本來(lái)用quicksort來(lái)做的,但是要注意其實(shí)只要達(dá)到部分有序就可以了,所以直接loop一遍,swap不符合規(guī)定的就可以。413. Arithmetic Slices:還是利用了一些巧妙的數(shù)學(xué)特性,當(dāng)前值和前面值的關(guān)系。像我是用dp把所有的都找到, 這樣的條件就太強(qiáng)了。406. Queue Reconstruction by Height:greedy的問(wèn)題基本就是找規(guī)律,先把同身高的拍好,然后再依次插入。370. Range Addition:這題很巧妙,利用prefix sum的特性,然后在最后一位加上一個(gè)負(fù)數(shù),很扯的題目。526. Beautiful Arrangement: backtracking的題,還結(jié)合一些dp,對(duì)于backtracking中訪問(wèn)過(guò)的值直接從hash里讀取。369. Plus One Linked List:因?yàn)檫@題只需要加1,所以用two pointer也可以做。442. Find All Duplicates in an Array: array本身就是一個(gè)可用的hash表,有時(shí)候可以利用這個(gè)做inplace的操作。495. Teemo Attacking: 這道題巧妙的地方在于每一次每一start的值都可以進(jìn)行重制,這也是計(jì)算overlap的一種方法。531. Lonely Pixel I:有些矩陣的題目并不一定要記錄矩陣中的每一個(gè)值,有時(shí)候只要記錄行列的特性就可以了。

529. Minesweeper: 對(duì)于上下左右找鄰居的寫法值得探索

245. Shortest Word Distance III:可以利用找記錄當(dāng)前index的方法來(lái)減少空間復(fù)雜度,281. Zigzag Iterator解法還挺多的,因?yàn)榉较蛐圆粫?huì)變,所以就是一個(gè)list一個(gè)list的走,238. Product of Array Except Self:挺巧妙的可以利用1的特性把空間復(fù)雜度降低為1,294. Flip Game II:這題很巧妙,用第二個(gè)玩家的情況來(lái)遞歸

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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