原创 LeetCode- 面試題32 - III. 從上到下打印二叉樹 III

請實現一個函數按照之字形順序打印二叉樹,即第一行按照從左到右的順序打印,第二層按照從右到左的順序打印,第三行再按照從左到右的順序打印,其他行以此類推。   例如: 給定二叉樹: [3,9,20,null,null,15,7],

原创 LeetCode- 面試題56 - I. 數組中數字出現的次數

一個整型數組 nums 裏除兩個數字之外,其他數字都出現了兩次。請寫程序找出這兩個只出現一次的數字。要求時間複雜度是O(n),空間複雜度是O(1)。   示例 1: 輸入:nums = [4,1,4,6] 輸出:[1,6] 或 [6,1]

原创 LeetCode-面試題 17.16. 按摩師

一個有名的按摩師會收到源源不斷的預約請求,每個預約都可以選擇接或不接。在每次預約服務之間要有休息時間,因此她不能接受相鄰的預約。給定一個預約請求序列,替按摩師找到最優的預約集合(總預約時間最長),返回總的分鐘數。 注意:本題相對原題稍作改

原创 LeetCode- 93. 復原IP地址

給定一個只包含數字的字符串,復原它並返回所有可能的 IP 地址格式。 示例: 輸入: "25525511135" 輸出: ["255.255.11.135", "255.255.111.35"]     DFS,思路:考慮滿足ip地址的要

原创 LeetCode-912. 排序數組

給你一個整數數組 nums,請你將該數組升序排列。   示例 1: 輸入:nums = [5,2,3,1] 輸出:[1,2,3,5] 示例 2: 輸入:nums = [5,1,1,2,0,0] 輸出:[0,0,1,1,2,5]   提示:

原创 LeetCode-836. 矩形重疊

矩形以列表 [x1, y1, x2, y2] 的形式表示,其中 (x1, y1) 爲左下角的座標,(x2, y2) 是右上角的座標。 如果相交的面積爲正,則稱兩矩形重疊。需要明確的是,只在角或邊接觸的兩個矩形不構成重疊。 給出兩個矩形,判

原创 LeetCode- 面試題32 - II. 從上到下打印二叉樹 II

從上到下按層打印二叉樹,同一層的節點按從左到右的順序打印,每一層打印到一行。   例如: 給定二叉樹: [3,9,20,null,null,15,7],     3    / \   9  20     /  \    15   7 返回

原创 LeetCode-面試題59 - II. 隊列的最大值

請定義一個隊列並實現函數 max_value 得到隊列裏的最大值,要求函數max_value、push_back 和 pop_front 的均攤時間複雜度都是O(1)。 若隊列爲空,pop_front 和 max_value 需要返回 -

原创 LeetCode-1052. 愛生氣的書店老闆

今天,書店老闆有一家店打算試營業 customers.length 分鐘。每分鐘都有一些顧客(customers[i])會進入書店,所有這些顧客都會在那一分鐘結束後離開。 在某些時候,書店老闆會生氣。 如果書店老闆在第 i 分鐘生氣,那麼

原创 LeetCode- 1329. 將矩陣按對角線排序

給你一個 m * n 的整數矩陣 mat ,請你將同一條對角線上的元素(從左上到右下)按升序排序後,返回排好序的矩陣。   示例 1: 輸入:mat = [[3,3,1,1],[2,2,1,2],[1,1,1,2]] 輸出:[[1,1,

原创 LeetCode-409. 最長迴文串

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

原创 LeetCode-820. 單詞的壓縮編碼

給定一個單詞列表,我們將這個列表編碼成一個索引字符串 S 與一個索引列表 A。 例如,如果這個列表是 ["time", "me", "bell"],我們就可以將其表示爲 S = "time#bell#" 和 indexes = [0, 2

原创 LeetCode-1160. 拼寫單詞

給你一份『詞彙表』(字符串數組) words 和一張『字母表』(字符串) chars。 假如你可以用 chars 中的『字母』(字符)拼寫出 words 中的某個『單詞』(字符串),那麼我們就認爲你掌握了這個單詞。 注意:每次拼寫時,ch

原创 LeetCode-199. 二叉樹的右視圖

給定一棵二叉樹,想象自己站在它的右側,按照從頂部到底部的順序,返回從右側所能看到的節點值。 示例: 輸入: [1,2,3,null,5,null,4] 輸出: [1, 3, 4] 解釋: 1 <--- /

原创 LeetCode-面試題 01.07. 旋轉矩陣

給你一幅由 N × N 矩陣表示的圖像,其中每個像素的大小爲 4 字節。請你設計一種算法,將圖像旋轉 90 度。 不佔用額外內存空間能否做到?   示例 1: 給定 matrix = [ [1,2,3], [4,5,6],