Redian新闻
>
学生物的还不赶紧转码工,想什么呢
avatar
学生物的还不赶紧转码工,想什么呢# Biology - 生物学
s*n
1
Implement a function string balanceParanthesis(string s); which given a
string s consisting of some parenthesis returns a string s1 in which
parenthesis are balanced and differences between s and s1 are minimum.
Eg - "(ab(xy)u)2)" -> "(ab(xy)u)2"
")))(((" -> ""
Is my idea correct:?
void eliminate (int left[], int right[],leftsize, rightsize)//in left right
there are position info. left[0] is the position of first left paranthesis
{
sort (left, left+leftsize);
sort (right, right+rightsize);
int leftcurrent=0, rightcurrent;
for (int rightcurrent=0; rightcurrentif (leftcurrent>=leftsize) {for (int j=rightcurrent;jright[j]=-1; break;}
if (left[leftcurrent]leftcurrent++;
}
else right[rightcurrent]=-1; //remove it
}
for (int j=leftcurrent; j}
avatar
s*n
2
买房的时候没考虑过风水的问题,结果买的townhouse进门就是楼梯,而且空间比较小
,请问如何化解?
avatar
f*i
3
学生物的还不赶紧转码工,想什么呢
早转早得利, 自己血淋淋的经验教训
avatar
r*g
4
MARK
avatar
B*o
5
放绿色植物
★ Sent from iPhone App: iReader Mitbbs 7.18 - iPhone Lite
avatar
f*9
6
楼主什么经验

【在 f********i 的大作中提到】
: 学生物的还不赶紧转码工,想什么呢
: 早转早得利, 自己血淋淋的经验教训

avatar
i*d
7
直接用一个stack做左右括号匹配不就好了么?
avatar
s*n
8
假的成么?我养不活植物。
哪种植物合适呢?

【在 B****o 的大作中提到】
: 放绿色植物
: ★ Sent from iPhone App: iReader Mitbbs 7.18 - iPhone Lite

avatar
g*0
9
等生物老中辛辛苦苦转了马工第一轮电面就被阿三使坏放倒的时候肯定会想还是原来的
中国发考题nice啊。
avatar
d*l
10
题目有点不清楚。s除了包含括号还包含其它字符?能做的操作有哪些,插入,删除?
把')'改成'('可不可以?minimum differences怎么定义?是说从s到算s1所需操作最少?
对于")))(((",“()()()"只改动4个字符,算不算比”“更近些呢?

right

【在 s*****n 的大作中提到】
: Implement a function string balanceParanthesis(string s); which given a
: string s consisting of some parenthesis returns a string s1 in which
: parenthesis are balanced and differences between s and s1 are minimum.
: Eg - "(ab(xy)u)2)" -> "(ab(xy)u)2"
: ")))(((" -> ""
: Is my idea correct:?
: void eliminate (int left[], int right[],leftsize, rightsize)//in left right
: there are position info. left[0] is the position of first left paranthesis
: {
: sort (left, left+leftsize);

avatar
C*r
11
仿照明定陵,放些朱漆的箱子。
avatar
e*o
12
马工的nice 程度跟 faculty nice 程度没有可比性。根本不在一个数量级。

【在 g********0 的大作中提到】
: 等生物老中辛辛苦苦转了马工第一轮电面就被阿三使坏放倒的时候肯定会想还是原来的
: 中国发考题nice啊。

avatar
i*d
13
根据lz说的例子,我感觉他的意思是删除最少的括弧,使得expression是合法的。

少?

【在 d*******l 的大作中提到】
: 题目有点不清楚。s除了包含括号还包含其它字符?能做的操作有哪些,插入,删除?
: 把')'改成'('可不可以?minimum differences怎么定义?是说从s到算s1所需操作最少?
: 对于")))(((",“()()()"只改动4个字符,算不算比”“更近些呢?
:
: right

avatar
m*o
14


【在 e*******o 的大作中提到】
: 马工的nice 程度跟 faculty nice 程度没有可比性。根本不在一个数量级。
avatar
d*l
15
那感觉就有点trivial了,就像你上面说的直接用栈把能匹配上的抵消掉,剩下就是必
须要删除的。否则没别的办法让他们合法。

【在 i**d 的大作中提到】
: 根据lz说的例子,我感觉他的意思是删除最少的括弧,使得expression是合法的。
:
: 少?

avatar
S*r
16
为了几个钱一辈子受阿三使唤,两到三年被辞退一次,然后45岁后找不到工作?这是你
想要的生活?

【在 f********i 的大作中提到】
: 学生物的还不赶紧转码工,想什么呢
: 早转早得利, 自己血淋淋的经验教训

avatar
w*x
17
是这样的吗??
有必要用stack吗?? 计数不就得了
avatar
f*y
18
45岁的千老被辞了可以找到工作?

【在 S****r 的大作中提到】
: 为了几个钱一辈子受阿三使唤,两到三年被辞退一次,然后45岁后找不到工作?这是你
: 想要的生活?

avatar
i*d
19
我理解的是,用stack可以存储括弧的位置信息,以便第二次遍历的时候,把不合法的
括弧去掉。

【在 w****x 的大作中提到】
: 是这样的吗??
: 有必要用stack吗?? 计数不就得了

avatar
Z*o
20
显然不了解千老在生物界还有别的途径可以找个稳妥钱也不少可以安稳退休的职场路径
.... :)
算了,就不告诉你了。
去转码工去吧。

【在 f*****y 的大作中提到】
: 45岁的千老被辞了可以找到工作?
avatar
d*l
21
我就是顺着楼上那么一说。。如果题意真的是那样,这些实现细节就影响不大了

【在 w****x 的大作中提到】
: 是这样的吗??
: 有必要用stack吗?? 计数不就得了

avatar
o*e
22
“别的途径”不外乎是到微博上去“科普”,大不了来点"安保资金"
现在国内网络上言必称科学的,除了三流本科的在校懵懂学生,剩下的不就是你们这些
成天只会把液体从这个试管倒入另一个试管的学生物学的么?
装啥装呢?

【在 Z****o 的大作中提到】
: 显然不了解千老在生物界还有别的途径可以找个稳妥钱也不少可以安稳退休的职场路径
: .... :)
: 算了,就不告诉你了。
: 去转码工去吧。

avatar
s*n
23
Implement a function string balanceParanthesis(string s); which given a
string s consisting of some parenthesis returns a string s1 in which
parenthesis are balanced and differences between s and s1 are minimum.
Eg - "(ab(xy)u)2)" -> "(ab(xy)u)2"
")))(((" -> ""
Is my idea correct:?
void eliminate (int left[], int right[],leftsize, rightsize)//in left right
there are position info. left[0] is the position of first left paranthesis
{
sort (left, left+leftsize);
sort (right, right+rightsize);
int leftcurrent=0, rightcurrent;
for (int rightcurrent=0; rightcurrentif (leftcurrent>=leftsize) {for (int j=rightcurrent;jright[j]=-1; break;}
if (left[leftcurrent]leftcurrent++;
}
else right[rightcurrent]=-1; //remove it
}
for (int j=leftcurrent; j}
avatar
w*a
24
尼玛,我们都用移液器的好伐,谁倒来倒去的?

【在 o*********e 的大作中提到】
: “别的途径”不外乎是到微博上去“科普”,大不了来点"安保资金"
: 现在国内网络上言必称科学的,除了三流本科的在校懵懂学生,剩下的不就是你们这些
: 成天只会把液体从这个试管倒入另一个试管的学生物学的么?
: 装啥装呢?

avatar
r*g
25
MARK
avatar
s*y
26
手拿一把移液枪,走到哪里都不慌

【在 o*********e 的大作中提到】
: “别的途径”不外乎是到微博上去“科普”,大不了来点"安保资金"
: 现在国内网络上言必称科学的,除了三流本科的在校懵懂学生,剩下的不就是你们这些
: 成天只会把液体从这个试管倒入另一个试管的学生物学的么?
: 装啥装呢?

avatar
i*d
27
直接用一个stack做左右括号匹配不就好了么?
avatar
Z*o
28
你果然是不知道 :)
我也继续装,多好啊!

【在 o*********e 的大作中提到】
: “别的途径”不外乎是到微博上去“科普”,大不了来点"安保资金"
: 现在国内网络上言必称科学的,除了三流本科的在校懵懂学生,剩下的不就是你们这些
: 成天只会把液体从这个试管倒入另一个试管的学生物学的么?
: 装啥装呢?

avatar
d*l
29
题目有点不清楚。s除了包含括号还包含其它字符?能做的操作有哪些,插入,删除?
把')'改成'('可不可以?minimum differences怎么定义?是说从s到算s1所需操作最少?
对于")))(((",“()()()"只改动4个字符,算不算比”“更近些呢?

right

【在 s*****n 的大作中提到】
: Implement a function string balanceParanthesis(string s); which given a
: string s consisting of some parenthesis returns a string s1 in which
: parenthesis are balanced and differences between s and s1 are minimum.
: Eg - "(ab(xy)u)2)" -> "(ab(xy)u)2"
: ")))(((" -> ""
: Is my idea correct:?
: void eliminate (int left[], int right[],leftsize, rightsize)//in left right
: there are position info. left[0] is the position of first left paranthesis
: {
: sort (left, left+leftsize);

avatar
o*e
30
我当然是不知道了,而且更不屑知道。
你有什么“金点子”最好自己去实现(了先),然后写书去告诉别人有什么绝招。
千万别和饶毅11g之类的去中国叫卖什么“我有一个梦想”。
而不是现在就凭你这种装神弄鬼的“生物学式神秘法”,你去找赵本山斗吧,别跟我神
神叨叨的。

【在 Z****o 的大作中提到】
: 你果然是不知道 :)
: 我也继续装,多好啊!

avatar
i*d
31
根据lz说的例子,我感觉他的意思是删除最少的括弧,使得expression是合法的。

少?

【在 d*******l 的大作中提到】
: 题目有点不清楚。s除了包含括号还包含其它字符?能做的操作有哪些,插入,删除?
: 把')'改成'('可不可以?minimum differences怎么定义?是说从s到算s1所需操作最少?
: 对于")))(((",“()()()"只改动4个字符,算不算比”“更近些呢?
:
: right

avatar
b*y
32
阿三有好有坏, 但起码没法拿科学, 情怀忽悠人, 大家一手交钱, 一手交货。

【在 g********0 的大作中提到】
: 等生物老中辛辛苦苦转了马工第一轮电面就被阿三使坏放倒的时候肯定会想还是原来的
: 中国发考题nice啊。

avatar
d*l
33
那感觉就有点trivial了,就像你上面说的直接用栈把能匹配上的抵消掉,剩下就是必
须要删除的。否则没别的办法让他们合法。

【在 i**d 的大作中提到】
: 根据lz说的例子,我感觉他的意思是删除最少的括弧,使得expression是合法的。
:
: 少?

avatar
w*x
34
是这样的吗??
有必要用stack吗?? 计数不就得了
avatar
i*d
35
我理解的是,用stack可以存储括弧的位置信息,以便第二次遍历的时候,把不合法的
括弧去掉。

【在 w****x 的大作中提到】
: 是这样的吗??
: 有必要用stack吗?? 计数不就得了

avatar
d*l
36
我就是顺着楼上那么一说。。如果题意真的是那样,这些实现细节就影响不大了

【在 w****x 的大作中提到】
: 是这样的吗??
: 有必要用stack吗?? 计数不就得了

avatar
s*f
37
//Implement a function string balanceParanthesis(string s); which given a
//string s consisting of some parenthesis returns a string s1 in which
//parenthesis are balanced and differences between s and s1 are minimum.
//Eg - "(ab(xy)u)2)" -> "(ab(xy)u)2"
//")))(((" -> ""
void DelBrackets(char *str){
if (!str)
return;
deque sc;
deque sp;
char *p = str;
while (*p){
if (*p == '('){
sc.push_back('(');
sp.push_back(p);
}else if (*p == ')'){
if (!sc.empty() && sc.back() == '('){
sc.pop_back();
sp.pop_back();
}else{
sc.push_back(')');
sp.push_back(p);
}
}
++p;
}
p = str;
char *q = str;
while (*q){
if (q == sp.front()){
++q;
sp.pop_front();
}else{
*p++ = *q++;
}
}
*p = '\0';
}

right

【在 s*****n 的大作中提到】
: Implement a function string balanceParanthesis(string s); which given a
: string s consisting of some parenthesis returns a string s1 in which
: parenthesis are balanced and differences between s and s1 are minimum.
: Eg - "(ab(xy)u)2)" -> "(ab(xy)u)2"
: ")))(((" -> ""
: Is my idea correct:?
: void eliminate (int left[], int right[],leftsize, rightsize)//in left right
: there are position info. left[0] is the position of first left paranthesis
: {
: sort (left, left+leftsize);

avatar
l*0
38
这个题我看到好像要求是O(n)的时间,O(1)的空间..

【在 s*******f 的大作中提到】
: //Implement a function string balanceParanthesis(string s); which given a
: //string s consisting of some parenthesis returns a string s1 in which
: //parenthesis are balanced and differences between s and s1 are minimum.
: //Eg - "(ab(xy)u)2)" -> "(ab(xy)u)2"
: //")))(((" -> ""
: void DelBrackets(char *str){
: if (!str)
: return;
: deque sc;
: deque sp;

avatar
e*s
39
Left从左往右找左括号, Right从右往左找右括号。
left找到一个,right应该找到一个,找不到了把当前left的左括号删除。
left找不到了,right继续找,找到一个删一个。
还要记录第一个左括号的index与最后一个右括号的index(从右往左就是第一个了),
删除第一个左括号的index之前的右括号,删除最后一个右括号的index之后的左括号
Time O(n), Space O(1)
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。