M-AddTwoNumbers-未完成
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* ListNode *next;
* ListNode(int x) : val(x), next(NULL) {}
* };
*/
class Solution {
public:
ListNode *addTwoNumbers(ListNode *l1, ListNode *l2) {
// 这一题特别能考察思维的全面性,很容易就指针越界; /*
* 问题1:虽然两段判断针对两种不同的情况,但当上一个判断语句中,已经对指针进行操作;
* 运行到第二段判断时,很可能由于指针位置变化,当前的判断出现越界
*/ /*
* 问题2:return函数只存在于判断模块中的时候,如果判断模块不满足,则运行到最后可能造成无返回值
*/ /*
* 注意:这种指针做入参的情况,一般都新建一个指针,不要在原指针上操作,要养成好习惯;
* 同时,新的链表和原链表不同,要重新建立结点;
*/ /*
* 问题3:当判断太多时,可以使用比较判断语句,增加可读性 cur = (l1 == NULL ? l1 : l2);
*/ int flag = ;
ListNode *head = l1; if (!l1)
return l2;
if (!l2)
return l1; while (true) {
l1->val += l2->val + flag;
if (l1->val > ) {
l1->val -= ;
flag = ;
} else {
flag = ;
}
if (l1->next && l2->next) {
l1 = l1->next;
l2 = l2->next;
} else {
break;
}
} if (l1->next && !l2->next) {
while (l1->next) {
l1 = l1->next;
l1->val += flag;
if (l1->val > ) {
l1->val -= ;
flag = ;
} else {
flag = ;
}
}
if (flag == ) {
ListNode *newNode = new ListNode();
l1->next = newNode;
}
return head;
} if (!l1->next && l2->next) {
l1->next = l2->next;
while (l2->next) {
l2 = l2->next;
l2->val += flag;
if (l2->val > ) {
l2->val -= ;
flag = ;
} else {
flag = ;
}
}
if (flag == ) {
ListNode *newNode = new ListNode();
l2->next = newNode;
}
return head;
} if(!l1->next && !l2->next && flag == ) {
ListNode *newNode = new ListNode();
l1->next = newNode;
}
return head;
}
};
再做;
M-AddTwoNumbers-未完成的更多相关文章
- [占位-未完成]scikit-learn一般实例之十一:异构数据源的特征联合
		[占位-未完成]scikit-learn一般实例之十一:异构数据源的特征联合 Datasets can often contain components of that require differe ... 
- [占位-未完成]scikit-learn一般实例之十:核岭回归和SVR的比较
		[占位-未完成]scikit-learn一般实例之十:核岭回归和SVR的比较 
- add-two-numbers
		leetcode开篇~ 问题描述: You are given two linked lists representing two non-negative numbers. The digits a ... 
- 【leedcode】add-two-numbers
		You are given two linked lists representing two non-negative numbers. The digits are stored in rever ... 
- [未完成]WebService学习第一天学习笔记
		[未完成]WebService学习第一天学习笔记[未完成]WebService学习第一天学习笔记 
- [未完成]关于GUI Java图形化界
		"笔记内容完成,整体未完成" GUI 图形化用户界面 用java做图形化用户界面的程序不多,大多用C++和defy.因为,Java做图形化效率低. 首先你要安装一个虚拟机,C++是 ... 
- BotVS开发基础—2.4 获取订单、取消订单、获取未完成订单
		代码 RetryDelay = 1500; def CancelPendingOrders(exch, orderType): # 取消所有未完成的挂单, 参数1 交易所 参数2 类型 global ... 
- Leetcode解题-链表(2.2.1)AddTwoNumbers
		1 题目:2.2.1 Add Two Numbers You are given two linked lists representing two non-negative numbers. The ... 
- 未完成的IT路停在回车键---2014年末总结篇
		时间都去哪儿了? 一晃而过,越来越能体会到这个词的真实感.特别是过了二十岁,这种感觉越来越深刻,越来越强烈,犹如小编做公交车的时候一直向后排排倒的香樟树,还记得有首歌叫时间都哪儿了,而 ... 
- 10. vue axios 请求未完成时路由跳转报错问题
		axios 请求未完成时路由跳转报错问题 前两天项目基本功能算是完成了,在公司测试时遇到了遇到了一个问题,那就是在请求未完成时进行路由跳转时会报错,想了几种办法来解决,例如加loading,请求拦截, ... 
随机推荐
- CentOS7 wget 安装Redis,开机启动配置
			安装 GCC yum install gcc yum install tcl 安装wget yum install wget 1. 下载Redis wget http://download.red ... 
- SpringBoot1.5.2安装配置--1.5.2版本问题
			简述下java环境 1.安装jdk http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htm ... 
- unity2018使用tileMap生成地图 类似泰拉瑞亚创建和销毁地图块
			参考网站:https://blog.csdn.net/pz789as/article/details/79540890 using System.Collections; using System.C ... 
- CSS的引入
			CSS的引入方式: 1.将样式规则写在css样式文件中,再以<link>标签引入. <link rel=stylesheet type="text/css" hr ... 
- input输入时软键盘回车显示搜索
			很多时候我们会看到输入法里面回车是搜索等字眼,今天我们就来实现这个效果 原本的效果: <form action=""> <input type="sea ... 
- Python对列表中字典元素排序
			问题起源 json对象a,b a = '{"ROAD": [{"id": 123}, {"name": "no1"}]} ... 
- Firebird 条件函数
			1.iif IIF (<condition>, ResultT, ResultF) 示例: select iif( sex = 'M', 'Sir', 'Madam' ) from Cu ... 
- [Erlang]各种系统限制总结
			Erlang本身对进程数,原子长度等没有限制,但为了提高性能和节省内存,总会在实际实现中和运行环境中作出一些限制. 1.进程数量 缺省情况下同时存在的最大Erlang进程数量不超过2^18=26214 ... 
- Linux的基本命令总结
			服务器版的Linux安装完毕了,但没有图形化界面,我们只能通过控制台去操作系统,我们就要使用类似DOS命令的Linux命令去操作系统,那么下面我们就进行Linux的命令的学习.Linux命令成百上千, ... 
- 2013 Warm up 3 -- Skill ---    dp
			题意:求n位数字,满足非递减的个数. dp[ i ] [ j ] = sum( dp[i -1] [ k ] ); k =>( j , 9); #include<iostream> ... 
