Redian新闻
>
请问雅诗兰黛最近有活动么?
avatar
请问雅诗兰黛最近有活动么?# Fashion - 美丽时尚
f*s
1
学了一个不好找工作的专业,估计还有2年才能毕业。本来准备考虑转学一个热门的专
业,但是老婆听人说博士后很好拿绿卡,所以鼓动我坚持毕业后读博士后。现在想请问
各位专家是不是博士后都可以拿绿卡?基本上是百分之百的肯定的事情?这样我好确定
未来的方向。虽然博士后工作不稳定,但是如果能在一两年内就能拿到绿卡倒不是坏事
,至少有了身份之后路子就会宽了。
感谢各位专家给点回复,谢谢!
avatar
e*i
2
leetcode上单链表转BST上那道题我用JAVA写了,可是测试就是过不了,求大神看看我
的code。
我确实看不出问题在哪儿,不会是getlength那个Method写错了吧
public class Solution {
public TreeNode sortedListToBST(ListNode head) {
// Start typing your Java solution below
// DO NOT write main() function
int length = getListLength(head);
return sortedListToBST(head, 1, length);
}

public TreeNode sortedListToBST(ListNode head, int start, int end){
if(start>end)
return null;
int mid = start + (end-start)/2;
TreeNode leftChild = sortedListToBST(head, start, mid-1);
TreeNode parent = new TreeNode(head.val);
parent.left = leftChild;
head = head.next;
parent.right = sortedListToBST(head, mid+1, end);

return parent;
}

public int getListLength(ListNode head){
ListNode current = head;
int count = 0;
while(current!=null){
count++;
current = current.next;
}
return count;
}
}
avatar
v*2
3
RT
avatar
p*m
4
应该是博士后比较难拿绿卡吧。
avatar
l*a
5
why use head.val as root.val?

【在 e******i 的大作中提到】
: leetcode上单链表转BST上那道题我用JAVA写了,可是测试就是过不了,求大神看看我
: 的code。
: 我确实看不出问题在哪儿,不会是getlength那个Method写错了吧
: public class Solution {
: public TreeNode sortedListToBST(ListNode head) {
: // Start typing your Java solution below
: // DO NOT write main() function
: int length = getListLength(head);
: return sortedListToBST(head, 1, length);
: }

avatar
s*g
6
欧美品牌,除了沐浴用品,送我我都不会用的。
avatar
a*e
7
要看什么样的博士后,发了些文章而且其他条件差不多的话,1年之内搞定绿卡也是可
能的,比去工业界排个五六年的队强很多

【在 f*********s 的大作中提到】
: 学了一个不好找工作的专业,估计还有2年才能毕业。本来准备考虑转学一个热门的专
: 业,但是老婆听人说博士后很好拿绿卡,所以鼓动我坚持毕业后读博士后。现在想请问
: 各位专家是不是博士后都可以拿绿卡?基本上是百分之百的肯定的事情?这样我好确定
: 未来的方向。虽然博士后工作不稳定,但是如果能在一两年内就能拿到绿卡倒不是坏事
: ,至少有了身份之后路子就会宽了。
: 感谢各位专家给点回复,谢谢!

avatar
b*n
8
parent应该是中间的node,head~mid-1是左子树,mid+1到tail是右子树。你的code有
两个
比较大的问题。
1. parent 选了head,这样对于有序链表来说,即使生成了树也是degenerated tree,
还是一个链表。parent最好是选mid node,可以生成平衡二叉树。
2. recursived左子树的时候,pass了head,造成head node的left child指向了自己。
你如果pass了有序数组转BST的那题,可以把中间二叉树的生成过程打出来,就会比较
清楚整个思路了。

【在 e******i 的大作中提到】
: leetcode上单链表转BST上那道题我用JAVA写了,可是测试就是过不了,求大神看看我
: 的code。
: 我确实看不出问题在哪儿,不会是getlength那个Method写错了吧
: public class Solution {
: public TreeNode sortedListToBST(ListNode head) {
: // Start typing your Java solution below
: // DO NOT write main() function
: int length = getListLength(head);
: return sortedListToBST(head, 1, length);
: }

avatar
c*9
9
younkers有活动。满29.9(好像)送礼包。一大一小两个包,外加六,七个彩妆之类
avatar
e*i
10

,
谢谢指导,我来顺着你的思路看看,我是把leetcode上那篇blog里的copy过来,结果不
行。一时半会儿还真没有看出问题

【在 b*****n 的大作中提到】
: parent应该是中间的node,head~mid-1是左子树,mid+1到tail是右子树。你的code有
: 两个
: 比较大的问题。
: 1. parent 选了head,这样对于有序链表来说,即使生成了树也是degenerated tree,
: 还是一个链表。parent最好是选mid node,可以生成平衡二叉树。
: 2. recursived左子树的时候,pass了head,造成head node的left child指向了自己。
: 你如果pass了有序数组转BST的那题,可以把中间二叉树的生成过程打出来,就会比较
: 清楚整个思路了。

avatar
s*g
11
送的都是非常价值低廉的彩妆,并且便于销售卸妆液。最关键的是不适合亚洲人的皮肤
,每次看到23岁之后的美国女人的老化的皮肤,我就纳闷为什么亚洲女人还要给它们这
些欧洲护肤品牌送钱?
avatar
p*2
12

最好不要copy

【在 e******i 的大作中提到】
:
: ,
: 谢谢指导,我来顺着你的思路看看,我是把leetcode上那篇blog里的copy过来,结果不
: 行。一时半会儿还真没有看出问题

avatar
e*i
13

是!我正在拜读您的博客。。。。

【在 p*****2 的大作中提到】
:
: 最好不要copy

avatar
l*a
14
最好也不要copy

【在 e******i 的大作中提到】
:
: 是!我正在拜读您的博客。。。。

avatar
e*i
15
哼!╭(╯^╰)╮

【在 l*****a 的大作中提到】
: 最好也不要copy
avatar
b*n
16
呵呵,不客气,一起研究。理解解题思路很重要 :)

【在 e******i 的大作中提到】
: 哼!╭(╯^╰)╮
avatar
z*e
17
if you use C++, the head should be passed by the reference, so the head
value will be updated in the recursive call.
In java, how to pass by reference?
avatar
w*o
18
java 不能从被调用的函数里去改变调用函数的值。一定用定义一个新class去封装
ListNode。一个workaround就是用只有一个元素的数组。
比如:
public class Solution {
public TreeNode sortedListToBST(ListNode head) {
int n= 0;
ListNode c = head;
while(c != null) {
n++;
c=c.next;
}

ListNode[] list = new ListNode[1];
list[0] = head;
return convert(list, 0, n-1);
}

TreeNode convert(ListNode[] list, int l, int r) {
if(l > r)
return null;

int m = l + (r-l)/2;
TreeNode left = convert(list, l, m-1);
TreeNode ret = new TreeNode(list[0].val);
ret.left = left;
list[0] = list[0].next;
TreeNode right = convert(list, m+1, r);
ret.right = right;

return ret;
}
}
avatar
n*r
19
LeetCode上对Java的建议是可以是用一个全局变量来保存head!这个是可行的。另外一
个方法就是把head包在一个数组里,传入该数组
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。