LeetCode刷題記63-109. 有序連結串列轉換二叉搜尋樹【檢視解法】
LeetCode刷題記63
109. 有序連結串列轉換二叉搜尋樹
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode() {}
* ListNode(int val) { this.val = val; }
* ListNode(int val, ListNode next) { this.val = val; this.next = next; }
* }
*/
/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode() {}
* TreeNode(int val) { this.val = val; }
* TreeNode(int val, TreeNode left, TreeNode right) {
* this.val = val;
* this.left = left;
* this.right = right;
* }
* }
*/
class Solution {
public TreeNode F(List<Integer> list, int l, int r) {
if (l > r) {
return null;
}
if (l == r) {
return new TreeNode(list.get(l));
}
int m = (l + r) / 2;
TreeNode root = new TreeNode(list.get(m));
root.left = F(list, l, m - 1);
root.right = F(list, m + 1, r);
return root;
}
public TreeNode sortedListToBST(ListNode head) {
List<Integer> list = new ArrayList<Integer>();
while (head != null) {
list.add(head.val);
head = head.next;
}
return F(list, 0, list.size() - 1);
}
}
偷懶的做法就是把連結串列轉成陣列。
就和之前一個題目 (忘記了是哪一個)一樣的。
這個解法
比較好,mark一下。
5/5
63/150
相關文章
- LeetCode系列之「有序連結串列轉換二叉搜尋樹」LeetCode
- LeetCode-109-有序連結串列轉換二叉搜尋樹LeetCode
- LeetCode 109——有序連結串列轉化二叉搜尋樹LeetCode
- 466. 使用快慢指標把有序連結串列轉換二叉搜尋樹指標
- 【連結串列問題】打卡10:將搜尋二叉樹轉換成雙向連結串列二叉樹
- 面試題36:二叉搜尋樹與雙向連結串列面試題
- LeetCode-108-將有序陣列轉換為二叉搜尋樹LeetCode陣列
- LeetCode 108. 將有序陣列轉換為二叉搜尋樹LeetCode陣列
- Python教程:將有序陣列轉換為二叉搜尋樹Python陣列
- leetcode 108.將有序陣列轉換為二叉搜尋樹 JavaLeetCode陣列Java
- 有序表和搜尋二叉樹二叉樹
- LeetCode將有序陣列轉化為二叉搜尋樹--JavaLeetCode陣列Java
- 程式碼隨想錄 第23天 | 669. 修剪二叉搜尋樹 ● 108.將有序陣列轉換為二叉搜尋樹 ● 538.把二叉搜尋樹轉換為累加樹 ● 總結篇陣列
- Leetcode刷題筆記 501. 二叉搜尋樹中的眾數LeetCode筆記
- 程式碼隨想錄演算法訓練營day23 | leetcode 669. 修剪二叉搜尋樹、108. 將有序陣列轉換為二叉搜尋樹、538. 把二叉搜尋樹轉換為累加樹演算法LeetCode陣列
- 微軟面試題,將二叉排序樹轉換成雙向連結串列微軟面試題排序
- 【LeetCode二叉樹#17】在二叉搜尋樹中插入或刪除某個值(涉及重構二叉樹、連結串列基礎、以及記憶體洩漏問題)LeetCode二叉樹記憶體
- Hash連結串列轉換為紅黑樹,和樹轉換為連結串列的條件
- LeetCode刷題記125-148. 排序連結串列LeetCode排序
- leetcode 刷題視訊(5) - 二叉樹與圖LeetCode二叉樹
- 【LeetCode-連結串列】面試題-反轉連結串列LeetCode面試題
- 將二叉排序樹BST轉換成排序的雙向連結串列排序
- 連結串列面試題(七)---合併兩個有序連結串列面試題
- Leetcode 700. 二叉搜尋樹中的搜尋(DAY 2)LeetCode
- 資料結構-二叉搜尋樹資料結構
- 【資料結構】二叉搜尋樹!!!資料結構
- Python演算法練習--把搜尋樹轉成雙向連結串列Python演算法
- leetcode:21. 合併兩個有序連結串列(連結串列,簡單)LeetCode
- leetcode 700. 二叉搜尋樹中的搜尋 思考分析LeetCode
- leetcode刷題.143. 重排連結串列.每日打卡LeetCode
- 二叉樹展開為連結串列二叉樹
- 資料結構中的樹(二叉樹、二叉搜尋樹、AVL樹)資料結構二叉樹
- 【LeetCode】98. 驗證二叉搜尋樹LeetCode
- LeetCode 95 | 構造出所有二叉搜尋樹LeetCode
- LeetCode-173-二叉搜尋樹迭代器LeetCode
- JavaScript 二叉搜尋樹以及實現翻轉二叉樹JavaScript二叉樹
- leetcode 刷題之深度優先搜尋LeetCode
- 資料結構之「二叉搜尋樹」資料結構