LeetCode108_Convert SortedArray to BinarySearchTree(將有序數組轉成二叉排序樹) Java題解

來源:互聯網
上載者:User

標籤:數組   二叉排序樹   java   leetcode   

題目:

Given an array where elements are sorted in ascending order, convert it to a height balanced BST.

題解:

和我上面一篇將有序鏈錶轉成二叉排序樹中用雜湊表解的方法是一樣的,基本思路:鏈表中間那個節點為樹的根節點,根節點的左子樹節點應該是根節點左邊那部分的中間節點,根節點的右節點應該是根節點右邊那部分鏈表的中間節點,後面就按照這個規律依次類推了。

public static TreeNode sortedArrayToBST(int[] nums) { int end=nums.length; if(end<=0) return null; return buildTree(nums, 0, end-1);//因為從0開始計數 所以減一             } public static TreeNode buildTree(int[] nums,int start,int end) { if(start<=end) { int mid=(start+end)/2; TreeNode root=new TreeNode(nums[mid]); root.left=buildTree(nums, start, mid-1); root.right=buildTree(nums, mid+1, end); return root; } else {return null;}  }


著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

LeetCode108_Convert SortedArray to BinarySearchTree(將有序數組轉成二叉排序樹) Java題解

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.