[LeetCode] Convert Sorted Array to Binary Search Tree

TreeNode *sortedArrayToBST(vector<int> &num) {
	int n = num.size();
	int beg = 0, end = n-1;
	TreeNode* root = NULL;
	if(beg <= end) {
		int mid = (beg + end + 1)/2;
		root = new TreeNode(num[mid]);
		vector<int> left_num;
		for(int i = beg; i < mid; i++) {
			left_num.push_back(num[i]);
		}
		root->left = sortedArrayToBST(left_num);
		vector<int> right_num;
		for(int i = mid + 1; i <= end; i++) {
			right_num.push_back(num[i]);
		}
		root->right = sortedArrayToBST(right_num);
	}
	return root;       
}

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