20 题完成 有bug很奇怪,有时0ms有时4ms
大概长这样
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; }大概长这样?
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; }