LeetCode(109) Convert Sorted List to Binary Search Tree
来源:互联网 发布:js切换视频播放 编辑:程序博客网 时间:2024/05/21 18:05
将链表转换成数组,直接调用(LeetCode(108) Convert Sorted Array to Binary Search Tree)[http://blog.csdn.net/guanzhongshan/article/details/47320535]代码
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; *//** * 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* recursion(vector<int>& nums, int start, int end) { if(end - start == 0) { TreeNode *p1 = new TreeNode(nums[start]); p1->left = NULL; p1->right = NULL; return p1; } if(end - start == 1) { TreeNode *p1 = new TreeNode(nums[start]); TreeNode *p2 = new TreeNode(nums[end]); p1->left = NULL; p1->right = NULL; p2->left = p1; p2->right = NULL; return p2; } int mid = (start + end) / 2; TreeNode *p1 = new TreeNode(nums[mid]); p1->left = recursion(nums, start, mid - 1); p1->right = recursion(nums, mid + 1, end); return p1; } TreeNode* sortedArrayToBST(vector<int>& nums) { if(nums.size() == 0) return NULL; return recursion(nums, 0, nums.size() - 1); } TreeNode* sortedListToBST(ListNode* head) { vector<int> nums; ListNode *p1 = head; while(p1 != NULL) { nums.push_back(p1->val); p1 = p1->next; } return sortedArrayToBST(nums); }};
0 0
- LeetCode(109)Convert Sorted List to Binary Search Tree
- LeetCode: Convert Sorted List to Binary Search Tree [109]
- LeetCode 109 Convert Sorted List to Binary Search Tree
- LeetCode 109 Convert Sorted List to Binary Search Tree
- [leetcode 109] Convert Sorted List to Binary Search Tree
- [LeetCode 109]Convert Sorted List to Binary Search Tree
- leetcode || 109、Convert Sorted List to Binary Search Tree
- 【leetcode】【单链表】【109】Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree - LeetCode 109
- leetcode[109]:Convert Sorted List to Binary Search Tree
- LeetCode(109) Convert Sorted List to Binary Search Tree
- Leetcode #109 Convert Sorted List to Binary Search Tree
- leetcode 109: Convert Sorted List to Binary Search Tree
- LeetCode(109) Convert Sorted List to Binary Search Tree
- 109 Convert Sorted List to Binary Search Tree [Leetcode]
- LeetCode—109 Convert Sorted List to Binary Search Tree
- 【LEETCODE】109-Convert Sorted List to Binary Search Tree
- LeetCode 109 Convert Sorted List to Binary Search Tree
- iOS即时通讯
- eclipse tomcat May be locked by another process 解决
- 关于coalesce的一些经验记录【陆续增补】
- iOS音乐后台播放及锁屏信息显示
- Circular dependencies cannot exist in RelativeLayout错误解决
- LeetCode(109) Convert Sorted List to Binary Search Tree
- AR增强现实摄像机拍照功能(部分)
- 电感滤波电路的工作原理
- 【Android注释技巧】Android函数上面的注释你是怎么写的?(Eclipse中)
- Swing 组件 JTable 详解
- NYOJ 330 一个简单的数学题
- iOS tabbar的translucent属性
- HDU-4790 Just Random
- C++ Builder 基础知识总结中