由买买提看人间百态

topics

全部话题 - 话题: child1
(共0页)
h**o
发帖数: 548
1
请教正确答案。
网上答案是下面这样的,但如果有个child不存在哪?难道返回另一个child?
网上还有种方法用inorder找candidate, 再用preorder找最先出现的candidate,那如
果一个child不存在, 不就找到root了吗?
Node* find_lowest_common_ancestor_BT(Node* root, Node* child1, Node* child2){
if (!root) return NULL;
Node* left=NULL;
Node* right= NULL;
//if either child1 or 2 are root than root is LCA
//and since this algorithm goes from top to down, in the case of one
child is
//ancestor of the other child, the ancestor child will be hit and return.
int... 阅读全帖
d*******d
发帖数: 2050
2
来自主题: JobHunting版 - 这个copy random link真不容易写对
好吧,我写个copy random graph的通解,对一切graph,tree,list什么的都有效。
区别是O(n)space 复杂度。可以拿来救场。
标准list copy应该是O(n) time, O(1) space.
假设hash class, equal class已经定义好了。
Node * copy(Node * root, unordered_map & rec){
if(root == 0)
return 0;
unordered_map::iterator it = rec.find(root);
if( it != rec.end()){
return it->second;
}else{
Node * newnode = new Node(root);// a new node, copy data
rec.insert(make_pair( root, newnode));
// then copy each ... 阅读全帖
h********m
发帖数: 116
3
来自主题: JobHunting版 - 问一个java design的题
假设我有个abstract class,和两个不同的子类。根据enum type,决定生成哪个子类:
public abstract class Base {
enum type {c1, c2}
public Base(type){
switch case(c1) return Child1(xxx);
case(c2) return Child2(xxx);
}
}
public class Child1 extends Base
public class Child2 extends Base
可是具体生成instance的时候应该怎么做呢?下面这个语句会报错abstract class
cannot be instantiated:
Base newInstance = new Base(c1);
i******e
发帖数: 1720
4
If trust the spouse
primary - spouse 100%
contingent - child1 50%, child2 50%
If not trust the spouse
primary - child1 50%, child2 50%.
h********m
发帖数: 116
5
来自主题: Java版 - 问一个java design的题
假设我有个abstract class,和两个不同的子类。根据enum type,决定生成哪个子类:
public abstract class Base {
enum type {c1, c2}
public Base(type){
switch case(c1) return Child1(xxx);
case(c2) return Child2(xxx);
}
}
public class Child1 extends Base
public class Child2 extends Base
可是具体生成instance的时候应该怎么做呢?下面这个语句会报错abstract class
cannot be instantiated:
Base newInstance = new Base(c1);
c****e
发帖数: 1453
6
来自主题: Programming版 - 烤树题。
Node *copy(Node *root)
{
if (root == NULL) return NULL;
Node *newnode = new Node;
newnode->value = root->value;
newnode->child1=copy(root->child1);
newnode->child2=copy(root->child2);
return newnode;
}
w*s
发帖数: 7227
7
比如说
child1 = spawn('ulimit', ['-m', '65536']);
这里65536我想用
var argu1=65536;
child1 = spawn('ulimit', ['-m', argu1]);
但他奶奶的不行。
谢谢各位指点!
w*s
发帖数: 7227
8
问题是这句怎么改
child1 = spawn('ulimit', ['-m', '65536']);
=>
child1 = spawn('ulimit', ['-m', argu1]);
今天好像就这里错了,明天上班再看
d**********o
发帖数: 1321
9
来自主题: WebRadio版 - 潜水员冒泡兼征版友意见
hw3b c-.y file
上面这一楼贴了载止hw3b deadline时我match的结果(也就是老师可以以这些不match
的ERROR为借口不给后来我补上的成绩),但是因为当时我还是没有写完,后来感恩节
期间就接着又写了一些,而且hw5是based on hw3 & hw3b的基础上(当我hw5是based
on更好的hw3的结果时,我应该可以得更多的分吧)。
hw4因为写得比较顺利,就不曾保留任何交上去作业的output,没有什么一目了然的结
果是我可以贴在这里的。原本我是想要把自己最的一次作业hw5贴出来的,但那已经是
一个完整的compiler,而且以后我还需要用自己的course project来找工作,所以一定
就不贴最终结果了。那就贴一个hw3b的c-.y文件吧,它集中的hw1、hw2、hw3、 hw3b的
结果,是我自己hw3b *.y文件的最完整版本。这些作业里面也有很多机关一一人为增加
的难度,比如那六七个IO相关的function,不仅traverse tree、build syntax tree的
时候会成为一个考点(把它们作为一个node连在syntax... 阅读全帖
d**********o
发帖数: 1321
10
来自主题: WebRadio版 - 潜水员冒泡兼征版友意见
hw3b c-.y file
上面这一楼贴了载止hw3b deadline时我match的结果(也就是老师可以以这些不match
的ERROR为借口不给后来我补上的成绩),但是因为当时我还是没有写完,后来感恩节
期间就接着又写了一些,而且hw5是based on hw3 & hw3b的基础上(当我hw5是based
on更好的hw3的结果时,我应该可以得更多的分吧)。
hw4因为写得比较顺利,就不曾保留任何交上去作业的output,没有什么一目了然的结
果是我可以贴在这里的。原本我是想要把自己最的一次作业hw5贴出来的,但那已经是
一个完整的compiler,而且以后我还需要用自己的course project来找工作,所以一定
就不贴最终结果了。那就贴一个hw3b的c-.y文件吧,它集中的hw1、hw2、hw3、 hw3b的
结果,是我自己hw3b *.y文件的最完整版本。这些作业里面也有很多机关一一人为增加
的难度,比如那六七个IO相关的function,不仅traverse tree、build syntax tree的
时候会成为一个考点(把它们作为一个node连在syntax... 阅读全帖
k********r
发帖数: 18
11
来自主题: Programming版 - 烤树题。
Write a method: Node* Copy(Node* root)
that takes a pointer to a Node structure as a parameter. The
Node structure contains two pointers to other Node structures. The function
should return a complete copy of the passed-in data structure.
请问是这样做吗?
typedef struct node{
int value;
struct node *child1;
struct node *child2;
}Node;
Node* Copy(Node* root){
Node *n = new Node;
Copywrapper(n, root);
return n;
}
void Copywrapper(Node* n, Node* root){
if(!root) return;
n->v
w*s
发帖数: 7227
12
var spawn = require('child_process').spawn;
// exec 2 commands 1 by 1
var child1 = spawn('cmd1', ['argu1']);
var child2 = spawn('cmd2', ['argu2']);
怎样保证cmd1执行完毕了再执行cmd2 ?
(如果是shell我就这么写,
/home/wds# cmd1 argu1; cmd2 argu2)
上班一天很累啦,求大牛们直接告诉答案。谢谢!
(共0页)