leetcode真題 貪心演算法

2021-10-03 05:58:11 字數 1605 閱讀 6157

問題1:分發餅乾

原題

/// greedy algorithm

/// serve most greedy children first

/// time complexity: o(nlogn)

/// space complexity: o(1)

class solution

else

gi ++;}

return res;}}

;

問題2:is subsequence

原題

/// simulation

/// time complexity: o(len(s) + len(t))

/// space complexity: o(1)

class solution

return true;}}

;

/// dynamic programming based on ending point

/// time complexity: o(n^2)

/// space complexity: o(n)

class solution );

//dp[i]表示使用intervals[0...i]的區間能構成的最長不重疊區間序列

vector<

int>

dp(intervals.

size()

,1);

for(

int i =

1; i < intervals.

size()

; i ++

)for

(int j =

0; j < i ; j ++)if

(intervals[i][0

]>= intervals[j][1

])dp[i]

=max

(dp[i],1

+ dp[j]);

return intervals.

size()

-*max_element

(dp.

begin()

, dp.

end())

;}};

/// greedy algorithm based on ending point

/// time complexity: o(n)

/// space complexity: o(n)

class solution );

int res =1;

int pre =0;

for(

int i =

1; i < intervals.

size()

; i ++)if

(intervals[i][0

]>= intervals[pre][1

])return intervals.

size()

- res;}}

;

到這裡,演算法這一模組也算是過了一遍了,下乙個階段,就是繼續框架的學習,有時間再搞搞演算法的題目做一下!希望疫情盡快結束,讓我早日回學校(雖然我覺得在家還是挺好的),加油!!

LeetCode刷題指南 貪心演算法

45.跳躍遊戲 ii class solution maxl nextmax return 0 134.加油站 第一種解法 比較容易理解,但是效率比較低 class solution return rest 0 1 start 621.任務排程器 給定乙個用字元陣列表示的 cpu 需要執行的任務列表...

貪心演算法(leetcode)

1 分糖果 455 用最小的糖果大小滿足需求最小的孩子 class solution else return count 2 搖擺序列 376 遍歷一次,儲存乙個狀態,如果狀態為上公升,變為下降,則長度 1,下降變上公升 1 class solution def wigglemaxlength se...

LeetCode 貪心演算法

12.15 135.12.21 435.假設你是一位很棒的家長,想要給你的孩子們一些小餅乾。但是,每個孩子最多只能給一塊餅乾。對每個孩子 i,都有乙個胃口值 g i 這是能讓孩子們滿足胃口的餅乾的最小尺寸 並且每塊餅乾 j,都有乙個尺寸 s j 如果 s j g i 我們可以將這個餅乾 j 分配給孩...