LeetCode109. Convert Sorted List to Binary Search Tree
来源:互联网 发布:长城证券软件 编辑:程序博客网 时间:2024/05/21 19:42
题目:
https://leetcode.com/problems/convert-sorted-list-to-binary-search-tree/
Given a singly linked list where elements are sorted in ascending order, convert it to a height balanced BST.
思路:
题意:给一个排好序的链表,把它转化成高度平衡的二叉查找树。
其实就是不断的选出中间的节点作为根结点,分成两段,再分别往下递归选出中间节点。
代码:
/** * 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* partition(ListNode* head,int len){ if(head==NULL || len<=0){ return NULL; } ListNode* left=head; ListNode* right=head; int partLen=len/2; for(int i=1;i<=partLen;i++){ right=right->next; } TreeNode* treeNode=new TreeNode(right->val); right=right->next; TreeNode* leftChild=partition(left,partLen); TreeNode* rightChild=partition(right,len-partLen-1); treeNode->left=leftChild; treeNode->right=rightChild; return treeNode; } TreeNode* sortedListToBST(ListNode* head) { int len=0; if(head==NULL){ return NULL; } ListNode* p=head; while(p!=NULL){ len++; p=p->next; } return partition(head,len); }};
1 0
- LeetCode109. Convert Sorted List to Binary Search Tree
- [LeetCode109]Convert Sorted List to Binary Search Tree
- leetcode109~Convert Sorted List to Binary Search Tree
- Leetcode109——Convert Sorted List to Binary Search Tree
- LeetCode109 Convert Sorted List to Binary Search Tree
- LeetCode109—Convert Sorted List to Binary Search Tree
- LeetCode109. Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree
- Convert Sorted List to Binary Search Tree
- js操作svg旋转
- 第4周项目5-用递归方法求解1
- 安装Android Studio相关教程
- 数据库的四个范式之间的区别
- Ubuntu 14 查看 docker中对应容器的 IP
- LeetCode109. Convert Sorted List to Binary Search Tree
- java之awt防抖
- java String类类型的拓展延伸,以及本周知识储备
- 【Android】Android客户端使用okhttp上传文件php服务器
- 记住我 功能实现
- 处理器一条指令需要几个时钟周期?
- 老王笔记(树莓派3)-上手篇
- 第二次实验
- quick-cocos2dx 之transition.execute()的缓动效果