1
20 题完成
有bug很奇怪,有时0ms有时4ms
2
大概长这样
for(string s:tokens ){
switch(s){
case "+";
stack.push(stack.pop() + stack.pop());
break;
case "-";
stack.push(- stack.pop() +stack.pop);
break;
case "*"
stack.push( stack.pop()* stack.pop);
break;
case "/";
Integer second =stack.pop();
Integer first = stack.pop();
stack.push(first / second);
break;
default:
stack.push(Integer.valueOf(s));
break;
}
4
大概长这样?
struct ListNode* mergeTwoLists(struct ListNode* l1, struct ListNode* l2){
struct ListNode *p1,*p2,*q1,*q2,*p,*head;
p1=l1;
p2=l2;
if(l1=NULL){
return l2;
}else if(l2==NULL){
return l1;
}
if(p1->val <p2->val){
head=p1;
p1=p1->next;
}else{
head=p2;
p2=p2->next;
}
p=head;
while(p1!=NULL && p2!=NULL){
if(p1->val <=p2->val){
p->next=p1;
p=p1;
p1=p1->next;
}else{
p->next=p2;
p=p2;
p2=p2->next;
}
}
if(p1!=NULL){
p->next=p1;
}else{
p->next=p2;
}
return head;
}