原创 解決CSDN不登錄無法點擊閱讀全文問題

解決CSDN不登錄無法閱讀全文問題 最近CSDN不登錄無法閱讀全文,解決辦法也非常直接,自己動手寫一個腳本。 步驟如下: 1.由於本人用的Chrome瀏覽器,所以直接用的一個寫腳本的插件,叫做Tampermonkey,自行在Chrom

原创 LeetCode 235. 二叉樹的最近公共祖先

二叉樹的最近公共祖先 題目描述: 給定一個二叉搜索樹, 找到該樹中兩個指定節點的最近公共祖先。 百度百科中最近公共祖先的定義爲:“對於有根樹 T 的兩個結點 p、q,最近公共祖先表示爲一個結點 x,滿足 x 是 p、q 的祖先且 x

原创 LeetCode 617. 合併二叉樹

合併二叉樹 題目描述: 給定兩個二叉樹,想象當你將它們中的一個覆蓋到另一個上時,兩個二叉樹的一些節點便會重疊。 你需要將他們合併爲一個新的二叉樹。合併的規則是如果兩個節點重疊,那麼將他們的值相加作爲節點合併後的新值,否則不爲 NULL

原创 LeetCode 二叉樹的路徑遍歷

LeetCode 112. 路徑總和 題目描述: 給定一個二叉樹和一個目標和,判斷該樹中是否存在根節點到葉子節點的路徑,這條路徑上所有節點值相加等於目標和。 示例: 給定如下二叉樹,以及目標和 sum = 22,

原创 LeetCode 96. 不同的二叉搜索樹

不同的二叉搜索樹 題目描述:給定一個整數 n,求以 1 … n 爲節點組成的二叉搜索樹有多少種? 題目分析: 二叉搜索樹的性質: 1. 二叉搜索樹要求有一個根節點; 2. 根節點左子樹

原创 LeetCode 100. 相同的樹

相同的樹 題目描述: 給定兩個二叉樹,編寫一個函數來檢驗它們是否相同。 如果兩個樹在結構上相同,並且節點具有相同的值,則認爲它們是相同的。 題目求解:只需要利用遞歸進行深度搜索,對應結點兩兩比較即可。 代碼如下: /** * Def

原创 LeetCode 二叉樹的深度遍歷和層次遍歷(最詳細講解!)

二叉樹的深度遍歷(非遞歸) 題目描述: 二叉樹的前序遍歷:給定一個二叉樹,返回它的前序遍歷。 二叉樹的中序遍歷:給定一個二叉樹,返回它的中序遍歷。 二叉樹的後續遍歷:給定一個二叉樹,返回它的後序遍歷。 題目分析: 用傳統的遞歸做法難度

原创 LeetCode 101. 對稱二叉樹

對稱二叉樹 題目描述: 給定一個二叉樹,檢查它是否是鏡像對稱的。 例如,二叉樹 [1,2,2,3,4,4,3] 是對稱的。 1 / \ 2 2 / \ / \ 3 4 4 3 但是下面這個 [1,2,2,

原创 LeetCode 110. 平衡二叉樹

平衡二叉樹 題目描述: 給定一個二叉樹,判斷它是否是高度平衡的二叉樹。 本題中,一棵高度平衡二叉樹定義爲: 一個二叉樹每個節點的左右兩個子樹的高度差的絕對值不超過1。 示例 1: 給定二叉樹 [3,9,20,null,null,15

原创 LeetCode 530. 二叉搜索樹的最小絕對差

二叉搜索樹的最小絕對差 題目描述: 給定一個所有節點爲非負值的二叉搜索樹,求樹中任意兩節點的差的絕對值的最小值。 題目分析:根據二叉搜索樹的性質可得,按中序遍歷,即可得到一個遞增的序列,所以問題轉換爲,對於一個遞增的序列,求相鄰元素的