原创 *LeetCode 96. 不同的二叉搜索樹

題目描述: 不同的二叉搜索樹 給定一個整數 n,求以 1 ... n 爲節點組成的二叉搜索樹有多少種? 示例: 輸入: 3 輸出: 5 解釋: 給定 n = 3, 一共有 5 種不同結構的二叉搜索樹: 1 3

原创 *LeetCode 64. 最小路徑和

題目描述: 最小路徑和 給定一個包含非負整數的 m x n 網格,請找出一條從左上角到右下角的路徑,使得路徑上的數字總和爲最小。 說明:每次只能向下或者向右移動一步。 示例: 輸入: [   [1,3,1], [1,5,1],

原创 LeetCode 877. 石子游戲

題目描述: 石子游戲 亞歷克斯和李用幾堆石子在做遊戲。偶數堆石子排成一行,每堆都有正整數顆石子 piles[i] 。 遊戲以誰手中的石子最多來決出勝負。石子的總數是奇數,所以沒有平局。 亞歷克斯和李輪流進行,亞歷克斯先開始。 每回合,玩家

原创 LeetCode 438. 找到字符串中所有字母異位詞

題目描述: 找到字符串中所有字母異位詞 給定一個字符串 s 和一個非空字符串 p,找到 s 中所有是 p 的字母異位詞的子串,返回這些子串的起始索引。 字符串只包含小寫英文字母,並且字符串 s 和 p 的長度都不超過 20100。 說明:

原创 LeetCode 437. 路徑總和 III

題目描述: 路徑總和 III 給定一個二叉樹,它的每個結點都存放着一個整數值。 找出路徑和等於給定數值的路徑總數。 路徑不需要從根節點開始,也不需要在葉子節點結束,但是路徑方向必須是向下的(只能從父節點到子節點)。 二叉樹不超過1000個

原创 LeetCode 453. 最小移動次數使數組元素相等

題目描述:  最小移動次數使數組元素相等 給定一個長度爲 n 的非空整數數組,找到讓數組所有元素相等的最小移動次數。每次移動可以使 n - 1 個元素增加 1。 示例: 輸入: [1,2,3] 輸出: 3 解釋: 只需要3次移動(注

原创 LeetCode 443. 壓縮字符串

題目描述: 壓縮字符串 給定一組字符,使用原地算法將其壓縮。 壓縮後的長度必須始終小於或等於原數組長度。 數組的每個元素應該是長度爲1 的字符(不是 int 整數類型)。 在完成原地修改輸入數組後,返回數組的新長度。   進階: 你能否僅

原创 LeetCode 412. Fizz Buzz

題目描述: Fizz Buzz寫一個程序,輸出從 1 到 n 數字的字符串表示。1. 如果 n 是3的倍數,輸出“Fizz”;2. 如果 n 是5的倍數,輸出“Buzz”;3.如果 n 同時是3和5的倍數,輸出 “FizzBuzz”。示例

原创 LeetCode 441. 排列硬幣

題目描述: 排列硬幣 你總共有 n 枚硬幣,你需要將它們擺成一個階梯形狀,第 k 行就必須正好有 k 枚硬幣。 給定一個數字 n,找出可形成完整階梯行的總行數。 n 是一個非負整數,並且在32位有符號整型的範圍內。 示例 1: n =

原创 LeetCode 409. 最長迴文串

題目描述: 最長迴文串給定一個包含大寫字母和小寫字母的字符串,找到通過這些字母構造成的最長的迴文串。在構造過程中,請注意區分大小寫。比如 "Aa" 不能當做一個迴文字符串。注意:假設字符串的長度不會超過 1010。示例 1:輸入: "ab

原创 LeetCode 448. 找到所有數組中消失的數字

題目描述: 找到所有數組中消失的數字 給定一個範圍在  1 ≤ a[i] ≤ n ( n = 數組大小 ) 的 整型數組,數組中的元素一些出現了兩次,另一些只出現一次。 找到所有在 [1, n] 範圍之間沒有出現在數組中的數字。 您能在不

原创 LeetCode 415. 字符串相加

題目描述: 字符串相加給定兩個字符串形式的非負整數 num1 和num2 ,計算它們的和。注意:num1 和num2 的長度都小於 5100.num1 和num2 都只包含數字 0-9.num1 和num2 都不包含任何前導零。你不能使用

原创 LeetCode 434. 字符串中的單詞數

題目描述: 字符串中的單詞數統計字符串中的單詞個數,這裏的單詞指的是連續的不是空格的字符。請注意,你可以假定字符串裏不包括任何不可打印的字符。示例:輸入: "Hello, my name is John" 輸出: 5解題思路:     

原创 LeetCode 374. 猜數字大小

題目描述: 猜數字大小我們正在玩一個猜數字遊戲。 遊戲規則如下:我從 1 到 n 選擇一個數字。 你需要猜我選擇了哪個數字。每次你猜錯了,我會告訴你這個數字是大了還是小了。你調用一個預先定義好的接口 guess(int num),它會返回

原创 LeetCode 414. 第三大的數

題目描述: 第三大的數給定一個非空數組,返回此數組中第三大的數。如果不存在,則返回數組中最大的數。要求算法時間複雜度必須是O(n)。示例 1:輸入: [3, 2, 1] 輸出: 1 解釋: 第三大的數是 1. 示例 2:輸入: [1,