"108-convert Sorted array to binary Search tree (sort array into balanced binary tree)"
"leetcode-Interview algorithm classic-java Implementation" "All topics Directory Index"
Original Question
Given an array where elements is sorted in ascending order, convert it to a height balanced BST.
Main Topic
Given an ascending two-prong tree, convert it to a highly balanced two-tree.
Thinking of solving problems
The method of recursive division and Treatment is adopted.
Code Implementation
Tree Node class
publicclass TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; }}
Algorithm implementation class
Public class solution { PublicTreeNodeSortedarraytobst(int[] nums) {//parameter checking if(Nums = =NULL|| Nums.length <1) {return NULL; }///recursive Divide and conquer method solution returnSolve (Nums,0, Nums.length-1); }/** * Recursive Division Solution method * * @param nums sorted array in ascending order * @param start start position * @param End End position * @return root node * / PublicTreeNodeSolve(int[] Nums,intStartintEnd) {//And data that has not been processed if(Start <= end) {//Find a place to rub intMID = start + ((End-start) >>1);//Tectonic root nodeTreeNode root =NewTreeNode (Nums[mid]);//Seek left sub-treeRoot.left = Solve (Nums, start, mid-1);//Seek right subtreeRoot.right = Solve (Nums, Mid +1, end);//Return results returnRoot }return NULL; }}
Evaluation Results
Click on the picture, the mouse does not release, drag a position, release after the new window to view the full picture.
Special Instructions
Welcome reprint, Reprint please indicate the source "http://blog.csdn.net/derrantcm/article/details/47392999"
Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.
"Leetcode-Interview algorithm classic-java Implementation" "108-convert Sorted array to binary Search tree (sorted array into balanced binary tree)"