leetcode-108-將有序數組轉換爲二叉搜索樹

在這裏插入圖片描述
題目給出一個 TreeNode 的構造函數(也是樹的數據結構)

function TreeNode(val) {
    this.val = val;
    this.left = this.right = null;
}

二分遞歸 =>

function TreeNode(val) {
    this.val = val;
    this.left = this.right = null;
}


var sortedArrayToBST = function(nums) {
    if (!nums.length) return null; // 如果數組長度爲0返回null
    const createTree = (left, right) => {
        if (left > right) return null;
        let mid = Math.floor((left + right) / 2); // 將數組一分爲二
        let root = new TreeNode(nums[mid]);
        root.left = createTree(left, mid - 1);
        root.right = createTree(mid + 1, right);
        return root;
    }
    return createTree(0, nums.length - 1);
};

console.log(sortedArrayToBST([-10, -3, 0, 5, 9]));

在這裏插入圖片描述



感謝觀看 期待關注




在這裏插入圖片描述

知乎:叄貳壹

簡書:帶只拖鞋去流浪

關注我,帶你一起寫bug

warning :未經授權,不得轉載

有問題的小夥伴請在下方留言,喜歡就點個贊吧

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章