原创 劍指32 從上到下打印二叉樹

二叉樹的層序遍歷,本質就是廣度遍歷有向圖。都要用到隊列。 # -*- coding:utf-8 -*- # class TreeNode: # def __init__(self, x): # self.

原创 劍指31 棧的壓入、彈出序列

# -*- coding:utf-8 -*- class Solution: def IsPopOrder(self, pushV, popV): # write code here if

原创 劍指5:替換空格

1.python方法:把字符創轉爲list,然後遇到空格就把空格換爲%20,最後合成字符串 # -*- coding:utf-8 -*- class Solution: # s 源字符串 def replaceS

原创 劍指7:重建二叉樹

1.遞歸的思想:通過前序序列找到根節點,然後在中序中分爲左右子樹. 2.index:找到值對應的索引位置返回 3.遞歸函數何時停止的條件很重要 # -*- coding:utf-8 -*- # class TreeNode: #

原创 177. 第N高的薪水

自定義函數 Create function 函數名(參數)Returns 返回值數據類型 [with {Encryption | Schemabinding }] [as] begin SQL語句(必須有return 變量或值)

原创 劍指3.數組中重複的數字

1.自己寫:把每一個數拿出來和後面的數挨個對比,時間複雜度n^2 class Solution(object): def findDuplicates(self, nums): """ :

原创 176. 第二高的薪水

1.首先思路就是倒序排列,用limit限制輸出。 2.但是如果不存在則不會返回null,因此需要作爲臨時表 # Write your MySQL query statement below SELECT (SELECT DI

原创 牛客網答題輸入格式

官方示例: import sys for line in sys.stdin: a = line.split() print(int(a[0]) + int(a[1])) import sys N,M=ma

原创 181. 超過經理收入的員工

# Write your MySQL query statement below select a.Name as 'Employee' from Employee as a,Employee as b where a.Manage

原创 華師發票流程

發票 淘寶賬單詳情 證明

原创 198. 打家劫舍

動態規劃方法 1.分解爲子問題 2.遞歸定義最優解的值 3.計算最優解,自底向上 4.選出最優解 以第二個示例爲例,把最後一個1去掉,剩下的最優解DP【i-1】,加上1之後就有兩種情況,nums[i] + dp[i-2]和 dp[i

原创 455. 分發餅乾

貪心算法: 1.確定問題最優子結構 2.設計遞歸算法 3.證明貪心算法安全性 4.將遞歸轉換爲迭代 自己解答: class Solution(object): def findContentChildren(self, g,

原创 2.兩數相加

僞代碼如下: 將當前結點初始化爲返回列表的啞結點。 將進位 carrycarry 初始化爲 00。 將 pp 和 qq 分別初始化爲列表 l1l1 和 l2l2 的頭部。 遍歷列表 l1l1 和 l2l2 直至到達它們的尾端。 將

原创 89格雷編碼

1.遞歸的思想:每一個問題可以轉化爲小一位前面加上0或者1的問題 2.記得加1的時候要反向輸出 class Solution(object): def grayCode(self, n): """

原创 142. 環形鏈表 II

# Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.val = x #