Leetcode-109. Convert Sorted List to Binary Search Tree
来源:互联网 发布:网龙网络开发怎么样 编辑:程序博客网 时间:2024/06/05 13:35
前言:为了后续的实习面试,开始疯狂刷题,非常欢迎志同道合的朋友一起交流。因为时间比较紧张,目前的规划是先过一遍,写出能想到的最优算法,第二遍再考虑最优或者较优的方法。如有错误欢迎指正。博主首发CSDN,mcf171专栏。
博客链接:mcf171的博客
——————————————————————————————
Given a singly linked list where elements are sorted in ascending order, convert it to a height balanced BST.
这个题目就比较尴尬了,感觉Leetcode是不是抽风了,我对于空输入明明有处理,非说我没处理,然后虽然我效率不高,也误报了一次TLE,结果我看了下论坛的解法,和我差不多。应该是有更快的方法,因为是有序的,每个index的位置是可以算出来的。Your runtime beats 9.60% of java submissions.
public class Solution { public TreeNode sortedListToBST(ListNode head) {if(null == head) return null;int size = 0;ListNode searchNode = head;while(searchNode != null){ size ++; searchNode = searchNode.next;}if(size == 0) return null;return generateBST(head,size); } private TreeNode generateBST(ListNode head,int size){if(size == 0) return null;if(size == 1) return new TreeNode(head.val);if(2 == size){TreeNode root = new TreeNode(head.val);TreeNode right = new TreeNode(head.next.val);root.right = right;return root;}else{int mid = size/2 + 1;ListNode searchNode = head;for(int i = mid; i > 1;i-- ){searchNode = searchNode.next;}TreeNode root = new TreeNode(searchNode.val);TreeNode left = generateBST(head,mid - 1);TreeNode right = generateBST(searchNode.next,size - mid);root.left = left;root.right = right;return root;} }}
0 0
- 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 Python
- [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
- 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
- Leetcode-109. Convert Sorted List to Binary Search Tree
- 【leetcode】109. Convert Sorted List to Binary Search Tree
- IOS类库管理工具CocoaPods的使用教程
- 利用Fibonacci队列学习python
- makefile的规则与模板
- linux系统编程中的信号量--模拟生产者与消费者
- springmvc上传附件出现异常Expected MultipartHttpServletRequest: is a MultipartResolver configured?
- Leetcode-109. Convert Sorted List to Binary Search Tree
- 11 个炫酷的 Linux 终端命令大全
- Java字符串格式化
- install nvm(node version manager)
- 为VMware虚拟机内安装的Ubuntu 16.04设置静态IP地址
- workstation虚拟机,linux切换到在后台运行(B),,正常退出,解决方法
- GitHub 优秀的 Android 开源项目
- 温故而知新,可以为师矣
- HTML5小试牛刀之———打造属于自己的滚动信息面板