原创 120. 三角形最小路徑和(JS實現)

1 題目 給定一個三角形,找出自頂向下的最小路徑和。每一步只能移動到下一行中相鄰的結點上。 相鄰的結點 在這裏指的是 下標 與 上一層結點下標 相同或者等於 上一層結點下標 + 1 的兩個結點。 例如,給定三角形: [ [2],

原创 108. 將有序數組轉換爲二叉搜索樹(JS實現)

1 題目 將一個按照升序排列的有序數組,轉換爲一棵高度平衡二叉搜索樹。 本題中,一個高度平衡二叉樹是指一個二叉樹每個節點 的左右兩個子樹的高度差的絕對值不超過 1。 示例: 給定有序數組: [-10,-3,0,5,9], 一個可

原创 116. 填充每個節點的下一個右側節點指針(JS實現)

1 題目 給定一個完美二叉樹,其所有葉子節點都在同一層,每個父節點都有兩個子節點。二叉樹定義如下: struct Node { int val; Node *left; Node *right; Node *next; } 填充

原创 106. 從中序與後序遍歷序列構造二叉樹(JS實現)

1 題目 根據一棵樹的中序遍歷與後序遍歷構造二叉樹。 注意: 你可以假設樹中沒有重複的元素。 例如,給出 中序遍歷 inorder = [9,3,15,20,7] 後序遍歷 postorder = [9,15,7,20,3] 返

原创 109. 有序鏈表轉換二叉搜索樹(JS實現)

1 題目 給定一個單鏈表,其中的元素按升序排序,將其轉換爲高度平衡的二叉搜索樹。 本題中,一個高度平衡二叉樹是指一個二叉樹每個節點 的左右兩個子樹的高度差的絕對值不超過 1。 示例: 給定的有序鏈表: [-10, -3, 0,

原创 112. 路徑總和(JS實現)

1 題目 給定一個二叉樹和一個目標和,判斷該樹中是否存在根節點到葉子節點的路徑,這條路徑上所有節點值相加等於目標和。 說明: 葉子節點是指沒有子節點的節點。 示例: 給定如下二叉樹,以及目標和 sum = 22, 5 / 4

原创 114. 二叉樹展開爲鏈表(JS實現)

1 題目 給定一個二叉樹,原地將它展開爲一個單鏈表。 例如,給定二叉樹 1 / 2 5 / \ 3 4 6 將其展開爲: 1 2 3 4 5 6 2 思路 這道題我的思路比較直接,首先前序遍歷樹,

原创 多級菜單和滾動條共存overflow問題

前天,在學習中遇到一個問題,要實現一個多級菜單,且每級菜單都有滾動條,這時我想使ul元素overflow-x爲visible,而overflow-y爲auto,但發現設置以後並沒有按照想像中的生效,x和y方向都變爲了auto,最後

原创 110. 平衡二叉樹(JS實現)

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

原创 117. 填充每個節點的下一個右側節點指針 II(JS實現)

1 題目 給定一個二叉樹 struct Node { int val; Node *left; Node *right; Node *next; } 填充它的每個 next 指針,讓這個指針指向其下一個右側節點。如果找不到下一個

原创 96. 不同的二叉搜索樹 (JS實現)

1 題目 給定一個整數 n,求以 1 … n 爲節點組成的二叉搜索樹有多少種? 示例: 輸入: 3 輸出: 5 解釋: 給定 n = 3, 一共有 5 種不同結構的二叉搜索樹: 1 3 3 2

原创 93. 復原IP地址(JS實現)

1 題目 給定一個只包含數字的字符串,復原它並返回所有可能的 IP 地址格式。 有效的 IP 地址正好由四個整數(每個整數位於 0 到 255 之間組成),整數之間用 ‘.’ 分隔。 示例: 輸入: “25525511135”

原创 88. 合併兩個有序數組(JS實現)

1 題目 給你兩個有序整數數組 nums1 和 nums2,請你將 nums2 合併到 nums1 中,使 nums1 成爲一個有序數組 說明: 初始化 nums1 和 nums2 的元素數量分別爲 m 和 n 。 你可以假設

原创 101. 對稱二叉樹(JS實現)

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

原创 86. 分隔鏈表(JS實現)

1 題目 給定一個鏈表和一個特定值 x,對鏈表進行分隔,使得所有小於 x 的節點都在大於或等於 x 的節點之前。 你應當保留兩個分區中每個節點的初始相對位置。 示例: 輸入: head = 1->4->3->2->5->2, x