原创 劍指offer 10- II. 青蛙跳臺階問題

題目鏈接 題解鏈接

原创 劍指offer 10-1 斐波那契數列

題目鏈接 題目描述 寫一個函數,輸入 n ,求斐波那契(Fibonacci)數列的第 n 項。斐波那契數列的定義如下: F(0) = 0, F(1) = 1 F(N) = F(N - 1) + F(N - 2), 其中 N >

原创 劍指offer 29 順時針打印矩陣

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

原创 劍指offer 61. 撲克牌中的順子

題目鏈接 題目描述 從撲克牌中隨機抽5張牌,判斷是不是一個順子,即這5張牌是不是連續的。2~10爲數字本身,A爲1,J爲11,Q爲12,K爲13,而大、小王爲 0 ,可以看成任意數字。A 不能視爲 14。 示例 1: 輸入: [1

原创 LeetCode每日一題———20.有效的括號

題目描述: 給定一個只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判斷字符串是否有效。 有效字符串需滿足: 左括號必須用相同類型的右括號閉合。 左括號必須以正確的順序閉合。 注意空字符串可被認爲是有效字符串。

原创 劍指offer 58 - I. 翻轉單詞順序

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

原创 劍指offer 53 - II. 0~n-1中缺失的數字

題目鏈接 一個長度爲n-1的遞增排序數組中的所有數字都是唯一的,並且每個數字都在範圍0~n-1之內。在範圍0~n-1內的n個數字中有且只有一個數字不在該數組中,請找出這個數字。 示例 1: 輸入: [0,1,3] 輸出: 2 示例

原创 劍指offer 64. 求1+2+…+n

題目轉載自Leetcode 求 1+2+…+n ,要求不能使用乘除法、for、while、if、else、switch、case等關鍵字及條件判斷語句(A?B:C)。 示例 1: 輸入: n = 3 輸出: 6 示例 2: 輸入:

原创 劍指offer 58 - II. 左旋轉字符串

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

原创 劍指offer 17. 打印從1到最大的n位數

題目描述 輸入數字 n,按順序打印出從 1 到最大的 n 位十進制數。比如輸入 3,則打印出 1、2、3 一直到最大的 3 位數 999。 示例 1: 輸入: n = 1 輸出: [1,2,3,4,5,6,7,8,9] 說明: 用

原创 劍指offer 22. 鏈表中倒數第k個節點

題目描述 輸入一個鏈表,輸出該鏈表中倒數第k個節點。爲了符合大多數人的習慣,本題從1開始計數,即鏈表的尾節點是倒數第1個節點。例如,一個鏈表有6個節點,從頭節點開始,它們的值依次是1、2、3、4、5、6。這個鏈表的倒數第3個節點是

原创 劍指offer27 二叉樹的鏡像

題目描述 題目轉載自Leetcode 請完成一個函數,輸入一個二叉樹,該函數輸出它的鏡像。 例如輸入: 示例 1: 輸入:root = [4,2,7,1,3,6,9] 輸出:[4,7,2,9,6,3,1] 題解 遞歸法 題解轉載

原创 劍指offer 55-I 二叉樹的深度

題目描述 題目轉載自Leetcode 輸入一棵二叉樹的根節點,求該樹的深度。從根節點到葉節點依次經過的節點(含根、葉節點)形成樹的一條路徑,最長路徑的長度爲樹的深度。 例如: 給定二叉樹 [3,9,20,null,null,15,

原创 劍指offer 05 替換空格

題目描述 題目轉載自LeetCode 請實現一個函數,把字符串 s 中的每個空格替換成"%20"。 示例 1: 輸入:s = “We are happy.” 輸出:“We%20are%20happy.” 限制: 0 <= s 的長

原创 Leetcode 06 從尾到頭打印鏈表

題目描述 題目轉載自Leetcode 輸入一個鏈表的頭節點,從尾到頭反過來返回每個節點的值(用數組返回)。 示例 1: 輸入:head = [1,3,2] 輸出:[2,3,1] 限制: 0 <= 鏈表長度 <= 10000 題解