108. Convert Sorted Array to Binary Search Tree
来源:互联网 发布:香港域名注册處 编辑:程序博客网 时间:2024/05/20 18:15
- Convert Sorted Array to Binary Search Tree
- 题目描述
- 代码实现
108. Convert Sorted Array to Binary Search Tree
题目描述
把排好序的序列弄成平衡二叉树。
Given an array where elements are sorted in ascending order, convert it to a height balanced BST.
代码实现
使用DFS即可解决这个问题。建立头结点,
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: TreeNode* GetBSTNode(vector<int> nums, TreeNode *root) { int nsz = nums.size(), mid = nsz >> 1; if(!nsz) return NULL; root->val = nums[mid]; if(mid > 0) { TreeNode * newl = new TreeNode(0); root->left = GetBSTNode(vector<int>(nums.begin(), nums.begin()+mid), newl); } if(mid + 1 < nsz) { TreeNode *newr = new TreeNode(0); root->right = GetBSTNode(vector<int>(nums.begin()+mid+1, nums.begin()+nsz), newr); } return root; } TreeNode* sortedArrayToBST(vector<int>& nums) { int nlen = nums.size(); if(!nlen) return NULL; TreeNode *res = new TreeNode(0); return GetBSTNode(nums, res); }};
0 0
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- Convert Sorted Array to Binary Search Tree
- HelloWorld
- JavaScript的作用域和作用域链
- 何时使用聚集索引或非聚集索引
- PAT乙级1002. 写出这个数 (20)
- Qt进度简单提示
- 108. Convert Sorted Array to Binary Search Tree
- LeetCode题解(Week 1):287. Find the Duplicate Number
- Android底层驱动移植--gslx680电容触摸屏驱动
- 美素数;不要62
- 通过反射获取构造方法,成员变量及成员方法
- 简述C语言动态、静态内存分配
- C++ 中使用sstream进行string和int相互转换
- android之存储篇_SQLite数据库_让你彻底学会SQLite的使用
- OpenGL 蓝宝书第七版 windows+vs 所需的环境的配置