原创 《Leetcode》297. 二叉樹的序列化與反序列化

序列化是將一個數據結構或者對象轉換爲連續的比特位的操作,進而可以將轉換後的數據存儲在一個文件或者內存中,同時也可以通過網絡傳輸到另一個計算機環境,採取相反方式重構得到原數據。 請設計一個算法來實現二叉樹的序列化與反序列化。這裏不限定你的序

原创 《Leetcode》14.最長公共前綴

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

原创 《Leetcode》70. 爬樓梯

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

原创 Python小模塊之Zip用法

刷leetcode題你總能看到各式各樣的小方法,各式各樣的python魔法方法。今天就來聊聊這個zip函數,這個是python的一個內置函數。 zip()接受的參數是一個可迭代的列表,返回的是一個個元組。zip顧名思義就意味着壓縮,那麼解

原创 《Leetcode》9. 迴文數

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

原创 《Leetcode》739. 每日溫度

根據每日 氣溫 列表,請重新生成一個列表,對應位置的輸出是需要再等待多久溫度纔會升高超過該日的天數。如果之後都不會升高,請在該位置用 0 來代替。 例如,給定一個列表 temperatures = [73, 74, 75, 71, 69,

原创 《Leetcode》15. 三數之和

給你一個包含 n 個整數的數組 nums,判斷 nums 中是否存在三個元素 a,b,c ,使得 a + b + c = 0 ?請你找出所有滿足條件且不重複的三元組。 注意:答案中不可以包含重複的三元組。 示例: 給定數組 nums =

原创 《Leetcode》面試題58 - I. 翻轉單詞順序

輸入一個英文句子,翻轉句子中單詞的順序,但單詞內字符的順序不變。爲簡單起見,標點符號和普通字母一樣處理。例如輸入字符串"I am a student. ",則輸出"student. a am I"。 示例 1: 輸入: "the sky

原创 《Leetcode》面試題46. 把數字翻譯成字符串

給定一個數字,我們按照如下規則把它翻譯爲字符串:0 翻譯成 “a” ,1 翻譯成 “b”,……,11 翻譯成 “l”,……,25 翻譯成 “z”。一個數字可能有多個翻譯。請編程實現一個函數,用來計算一個數字有多少種不同的翻譯方法。 示例

原创 從列表中隨機選取幾個元素

隨機選取元素的話使用random這個模塊:主要有選取一個還選取多個 1、選取多個 random.sample(population, k) population:列表 k:隨機返回的個數  eg: In [1]: poppulatio

原创 《Leetcode》面試題39. 數組中出現次數超過一半的數字

數組中有一個數字出你可以假設數組是非空的,並且給定的數組總是存在多數元素。 現的次數超過數組長度的一半,請找出這個數字。 示例 1: 輸入: [1, 2, 3, 2, 2, 2, 5, 4, 2] 輸出: 2 思路: 1、題目分析 題目

原创 《Leetcode》127. 單詞接龍

給定兩個單詞(beginWord 和 endWord)和一個字典,找到從 beginWord 到 endWord 的最短轉換序列的長度。轉換需遵循如下規則: 每次轉換隻能改變一個字母。 轉換過程中的中間單詞必須是字典中的單詞。 說明: 如

原创 《Leetcode》面試題29. 順時針打印矩陣

輸入一個矩陣,按照從外向裏以順時針的順序依次打印出每一個數字。 示例 1: 輸入:matrix = [[1,2,3],[4,5,6],[7,8,9]] 輸出:[1,2,3,6,9,8,7,4,5] 示例 2: 輸入:matrix =

原创 《Leetcode》238. 除自身以外數組的乘積

給你一個長度爲 n 的整數數組 nums,其中 n > 1,返回輸出數組 output ,其中 output[i] 等於 nums 中除 nums[i] 之外其餘各元素的乘積。 示例: 輸入: [1,2,3,4] 輸出: [24,12,

原创 《Leetcode》面試題58 - II. 左旋轉字符串

字符串的左旋轉操作是把字符串前面的若干個字符轉移到字符串的尾部。請定義一個函數實現字符串左旋轉操作的功能。比如,輸入字符串"abcdefg"和數字2,該函數將返回左旋轉兩位得到的結果"cdefgab"。 示例 1: 輸入: s = "a