leetcode第2题-Add Two Numbers
来源:互联网 发布:足球首发阵容软件 编辑:程序博客网 时间:2024/06/08 13:45
第二题相对于第一题较简单,主要考察的链表的操作,两个链表的相加操作。
#include<iostream>using namespace std;struct ListNode{int val;ListNode *next;ListNode(int x):val(x),next(NULL){}};ListNode *addTwoNumbers(ListNode *l1,ListNode *l2){ListNode *tail=new ListNode(0);int carry=0;ListNode *ptr=tail;while((l1!=NULL)||(l2!=NULL)){int val1=0;int val2=0;if(l1!=NULL){val1=l1->val;l1=l1->next;}if(l2!=NULL){val2=l2->val;l2=l2->next;}int tmp=val1+val2+carry;ptr->next=new ListNode(tmp%10);carry=tmp/10;ptr=ptr->next;}if(carry==1)ptr->next=new ListNode(1);return tail->next;}int main(){int count_l1;cout<<"请输入第一个链表的长度:";while(scanf("%d",&count_l1)!=EOF){cout<<"请输入第一个链表:\n";int m,i;ListNode *l1=new ListNode(0);ListNode *p1=l1;for(i=0;i<count_l1;i++){scanf("%d",&m);ListNode *tmp=new ListNode(m);p1->next=tmp;p1=p1->next;}cout<<"请输入第二个链表的长度:";int count_l2;scanf("%d",&count_l2);cout<<"请输入第二个链表:\n";ListNode *l2=new ListNode(0);ListNode *p2=l2;for(i=0;i<count_l2;i++){scanf("%d",&m);ListNode *tmp=new ListNode(m);p2->next=tmp;p2=p2->next;}ListNode *p=addTwoNumbers(l1->next,l2->next);cout<<"相加之后的结果是:";while(p!=NULL){cout<<p->val;cout<<" ";p=p->next;}cout<<endl;cout<<"请输入第一个链表的长度:";}return 0;}carry用于表示进位,从第一位开始让两个链表的数相加,加到没有数为止,如果最后carry等于1,则说明还有一个进位,再添加一个val为1的节点即可。
1 0
- leetcode第2题-Add Two Numbers
- Leetcode 第2题Add Two Numbers
- Leetcode 第 2 题(Add Two Numbers)
- 【LeetCode】第2题: Add Two Numbers
- 【LeetCode】LeetCode——第2题:Add Two Numbers
- leetcode 第4题 Add Two Numbers
- LeetCode OJ 第2题 Add Two Numbers 解题报告
- leetcode第2题——**Add Two Numbers
- 第2题:Add Two Numbers
- LeetCode算法题2:Add Two Numbers
- LeetCode 2 - Add Two Numbers
- LeetCode 2: Add Two Numbers
- Leetcode: Add Two Numbers (2)
- [leetcode 2] Add Two Numbers
- [Leetcode] 2 - Add Two Numbers
- LeetCode 2:《Add Two Numbers》
- LeetCode | #2 Add Two Numbers
- LeetCode 2 Add Two Numbers
- SpringMVC系列(三)JQuery和JSON方式参数传递并处理JAVAWEB中文乱码问题
- 锐谷科技无人自动气象站联网解决方案
- Hduoj1712【分组背包】
- 数学之路-SPSS备忘(2)
- 锐谷科技智能交通城市无线智能停车诱导系统
- leetcode第2题-Add Two Numbers
- 黑马程序员--单例设计模式、抽象、继承
- Myeclipse 10 使用mybatis-generator自动创建代码总结,附源码
- cocos2dx 学习(-)内存管理机制
- HUD(3790)——最短路径问题
- 简单动态规划两题(思想一样)
- HDOJ 4500 小Q系列故事——屌丝的逆袭
- [Android Studio]AS的常用配置
- 数据库操作sql语句总结