LeetCode 108. Convert Sorted Array to Binary Search Tree

Solution1:我的答案
构造二叉树利用递归

/*** 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* sortedArrayToBST(vector<int>& nums) {return my_sort(nums);}TreeNode* my_sort(vector<int> nums) {if (nums.size() == 0) return NULL;else if (nums.size() == 1) {TreeNode* root = new TreeNode(nums[0]);return root;}else {int root_index = nums.size()/2;TreeNode* root = new TreeNode(nums[root_index]);vector<int> left_tree, right_tree;for (int i = 0; i < nums.size(); i++) {if (i < root_index)left_tree.push_back(nums[i]);else if (i > root_index)right_tree.push_back(nums[i]);}root->left = my_sort(left_tree);root->right = my_sort(right_tree);return root;}}
};

Solution2:
参考网址:http://www.cnblogs.com/grandyang/p/4295245.html
下面是避免数组元素大量复制的写法,还是这种好 啊

class Solution {
public:TreeNode *sortedArrayToBST(vector<int> &num) {return sortedArrayToBST(num, 0 , num.size() - 1);}TreeNode *sortedArrayToBST(vector<int> &num, int left, int right) {if (left > right) return NULL;int mid = (left + right) / 2;TreeNode *cur = new TreeNode(num[mid]);cur->left = sortedArrayToBST(num, left, mid - 1);cur->right = sortedArrayToBST(num, mid + 1, right);return cur;}
};

【数组递归构造二叉树】LeetCode 108. Convert Sorted Array to Binary Search Tree相关推荐

  1. LeetCode: 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. ...

  2. leetcode 108. Convert Sorted Array to Binary Search Tree | 108. 将有序数组转换为二叉搜索树(Java)

    题目 https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/ 题解 经典二分,不解释了,直接看代码 /*** ...

  3. LeetCode 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 ...

  4. leetcode python3 简单题108. Convert Sorted Array to Binary Search Tree

    1.编辑器 我使用的是win10+vscode+leetcode+python3 环境配置参见我的博客: 链接 2.第一百零八题 (1)题目 英文: Given an array where elem ...

  5. 108. Convert Sorted Array to Binary Search Tree

    一.题目 1.审题 2.分析 给出一个有序的不重复的整形数组,组成一个二路平衡二叉树(左右子树高度差不超过1). 二.解答 1.思路: 方法一. 采用递归的方式.(像二分查找) ①.为了保持平衡,查找 ...

  6. LeetCode: 109. Convert Sorted List to Binary Search Tree

    题目 Given a singly linked list where elements are sorted in ascending order, convert it to a height b ...

  7. 【链表递归构造二叉树】LeetCode 109. Convert Sorted List to Binary Search Tree

    LeetCode 109. Convert Sorted List to Binary Search Tree Solution1:我的答案 偷鸡摸狗的做法 /*** Definition for s ...

  8. Convert Sorted Array to Binary Search Tree - LeetCode

    目录 题目链接 注意点 解法 小结 题目链接 Convert Sorted Array to Binary Search Tree - LeetCode 注意点 不要访问空结点 题目要求的是平衡二叉搜 ...

  9. LeetCode: Convert Sorted Array to Binary Search Tree 解题报告

    Convert Sorted Array to Binary Search Tree Given an array where elements are sorted in ascending ord ...

最新文章

  1. shell 生成指定范围随机数与随机字符串 .
  2. bfgs算法matlab程序,BFGS优化算法及应用实例.docx
  3. linux笔记本上安装了双显卡驱动(intel+nvidia)
  4. python编程语言是什么-什么是编程语言,什么是Python解释器
  5. Android输入系统(三)InputReader的加工类型和InputDispatcher的分发过程
  6. Java泛型总结--转
  7. Ubuntu 14.04 hadoop单机安装
  8. 同一数据库如果处理多个完全不同的业务?
  9. 卡西欧82es计算机怎么玩游戏,卡西欧计算器fx82es-如何使用卡西欧fx-82es计算器计算矩阵 – 手机爱问...
  10. ubuntu部署tomcat
  11. 现在当兵有什么待遇复原以后_当兵多少年最好呢?这些关键点会影响在部队发展,很重要、很实用...
  12. 不规矩的xml与JAVA对象互相转换的小技巧-使用Marshaller
  13. 基于ssm整合的web考勤管理系统
  14. linux的可执行文件是什么后缀
  15. TCP / UDP测试工具——tcpudptest使用总结
  16. 操作系统ucore lab1
  17. php 采集qq空间,php批量抓取QQ空间相册链接
  18. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
  19. python爬取裁判文书并分析_裁判文书网爬虫攻克
  20. 男生停止长高的迹象是真的吗?

热门文章

  1. 相机标定(二)—— 投影变换相关基础概述
  2. pcb可以给用户进程读吗_「TCP/UDP」一个端口号可以同时被两个进程绑定吗? - 一口Linux...
  3. 华为鸿蒙os和麒麟os区别,麒麟、鸿蒙皆自研,为何华为不像苹果将系统同时推送?...
  4. hbase 预分区_hbase的rowKey设计原则
  5. python随机生成中文句子_python – 如何使用NLTK从诱导语法中生成句子?
  6. java随机加法题_Java简单随机加法算式
  7. python将对象放入列表_将所有python-rom对象放入列表
  8. 空军军医大学计算机复试线,2021空军军医大学考研国家线公布时间_国家线是多少分...
  9. android 链式结构,Android 架构师之路10 设计模式之责任链模式
  10. sketchup作品_建环学院学生期末作品展第六站计算机辅助设计sketchup作业