題目給出一個 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 :未經授權,不得轉載
有問題的小夥伴請在下方留言,喜歡就點個贊吧