Convert Sorted List to Binary Search Tree
2014-08-24 11:05
267 查看
TreeNode *sortedListToBST(ListNode *head) { return sortedListToBST(head,listLength(head)); } TreeNode* sortedListToBST(ListNode* head,int len) { if(len ==0) return nullptr; if(len ==1) return new TreeNode(head->val); TreeNode* root =new TreeNode(nth_node(head,len/2+1)->val); root->left =sortedListToBST(head,len/2); root->right =sortedListToBST(nth_node(head,len/2+2),(len-1)/2); return root; } int listLength(ListNode* node) { int n=0; while(node) { ++n; node =node->next; } return n; } ListNode* nth_node(ListNode* node,int n) { while(--n) { node =node->next; } return node; }
相关文章推荐
- LeetCode: Convert Sorted List to Binary Search Tree
- [LeetCode] Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree
- 【ATT】Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree
- [Leetcode]Convert Sorted List to Binary Search Tree
- leetcode 66: Convert Sorted List to Binary Search Tree
- leetcode 66: Convert Sorted List to Binary Search Tree
- leetcode Convert Sorted List to Binary Search Tree
- [LeetCode] Convert Sorted List to Binary Search Tree
- LeetCode: Convert Sorted List to Binary Search Tree
- [LeetCode] Convert Sorted List to Binary Search Tree, Solution
- [Leetcode] Convert Sorted List to Binary Search Tree
- LeetCode:Convert Sorted List to Binary Search Tree
- [LeetCode]Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree
- Convert Sorted Array(List) to Binary Search Tree
- Leetcode: Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree