原创 leetcode第59題 螺旋矩陣 || (√)

給定一個正整數 n,生成一個包含 1 到 n2 所有元素,且元素按順時針順序螺旋排列的正方形矩陣。 示例: 輸入: 3 輸出: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ] ] class Sol

原创 leetcode 第54題 螺旋矩陣 (好好看,好好學)

給定一個包含 m x n 個元素的矩陣(m 行, n 列),請按照順時針螺旋順序,返回矩陣中的所有元素。 示例 1: 輸入: [ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ] ] 輸出: [1,2,3

原创 leetcod第148題 排序列表(歸併排序)×

class Solution { public ListNode sortList(ListNode head) { if(head == null || head.next == null) return

原创 leetcode第137題 只出現一次的數字(位運算)

給定一個非空整數數組,除了某個元素只出現一次以外,其餘每個元素均出現兩次。找出那個只出現了一次的元素。 說明: 你的算法應該具有線性時間複雜度。 你可以不使用額外空間來實現嗎? 示例 1: 輸入: [2,2,1] 輸出: 1 示例

原创 leetco第289題 生命遊戲

根據百度百科,生命遊戲,簡稱爲生命,是英國數學家約翰·何頓·康威在1970年發明的細胞自動機。 給定一個包含 m × n 個格子的面板,每一個格子都可以看成是一個細胞。每個細胞具有一個初始狀態 live(1)即爲活細胞, 或 de

原创 leetcode 第162題 尋找峯值 (二分查找) √

峯值元素是指其值大於左右相鄰值的元素。 給定一個輸入數組 nums,其中 nums[i] ≠ nums[i+1],找到峯值元素並返回其索引。 數組可能包含多個峯值,在這種情況下,返回任何一個峯值所在位置即可。 你可以假設 nums

原创 leetcode第1題 兩數之和 (√)

給定一個整數數組 nums 和一個目標值 target,請你在該數組中找出和爲目標值的那 兩個 整數,並返回他們的數組下標。 你可以假設每種輸入只會對應一個答案。但是,你不能重複利用這個數組中同樣的元素。 示例: 給定 nums

原创 leetcode第48題 旋轉圖像(√)

給定一個 n × n 的二維矩陣表示一個圖像。 將圖像順時針旋轉 90 度。 說明: 你必須在原地旋轉圖像,這意味着你需要直接修改輸入的二維矩陣。請不要使用另一個矩陣來旋轉圖像。 示例 1: 給定 matrix = [ [1,2,

原创 leetcode第143題 重排列表

給定一個單鏈表 L:L0→L1→…→Ln-1→Ln , 將其重新排列後變爲: L0→Ln→L1→Ln-1→L2→Ln-2→… 你不能只是單純的改變節點內部的值,而是需要實際的進行節點交換。 示例 1: 給定鏈表 1->2->3->

原创 leetcode 第7題 迴文數(√)

判斷一個整數是否是迴文數。迴文數是指正序(從左向右)和倒序(從右向左)讀都是一樣的整數。 示例 1: 輸入: 121 輸出: true 示例 2: 輸入: -121 輸出: false 解釋: 從左向右讀, 爲 -121 。 從右

原创 leetcode第236題 二叉樹的最近公共祖先 半√

給定一個二叉樹, 找到該樹中兩個指定節點的最近公共祖先。 百度百科中最近公共祖先的定義爲:“對於有根樹 T 的兩個結點 p、q,最近公共祖先表示爲一個結點 x,滿足 x 是 p、q 的祖先且 x 的深度儘可能大(一個節點也可以是它

原创 leetcode第70題 爬樓梯(v)

假設你正在爬樓梯。需要 n 階你才能到達樓頂。 每次你可以爬 1 或 2 個臺階。你有多少種不同的方法可以爬到樓頂呢? 注意:給定 n 是一個正整數。 示例 1: 輸入: 2 輸出: 2 解釋: 有兩種方法可以爬到樓頂。 1 階

原创 leetcode第7題 整數反轉(如何處理整數溢出)

給出一個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。 示例 1: 輸入: 123 輸出: 321 示例 2: 輸入: -123 輸出: -321 示例 3: 輸入: 120 輸出: 21 注意: 假設我們的環境

原创 leetcode第100題 相同的樹

給定兩個二叉樹,編寫一個函數來檢驗它們是否相同。 如果兩個樹在結構上相同,並且節點具有相同的值,則認爲它們是相同的。 示例 1: 輸入: 1 1 / \ / 2 3 2 3

原创 leetcode第14題 最長公共前綴(√)

編寫一個函數來查找字符串數組中的最長公共前綴。 如果不存在公共前綴,返回空字符串 “”。 示例 1: 輸入: [“flower”,“flow”,“flight”] 輸出: “fl” 示例 2: 輸入: [“dog”,“raceca