A
题目: 2. 两数相加
struct ListNode* addTwoNumbers(struct ListNode* l1, struct ListNode* l2){
struct ListNode *L,*p1,*p2;
int s,flag=0,a,b,l1end=0,l2end=0; //a,b接收l1,l2各节点上的数
//s存储a+b的和
//l1end,l2end记链表l1,l2是否遍历完
//flag记是否进位
L=(struct ListNode*)malloc(sizeof(struct ListNode));
L->next=NULL;
p2=L;
while(l1!=NULL||l2!=NULL||flag==1)
{ (l1!=NULL)? a=l1->val:(a=0,l1end=1); //判断链表l1当前节点状态
(l2!=NULL)? b=l2->val:(b=0,l2end=1); //判断链表l2当前节点状态
s=a+b+flag;
p1=(struct ListNode*)malloc(sizeof(struct ListNode)); //尾插法构建新链表L,把各位上的和存储在其节点上
p1->val=s%10;
p2->next=p1;
p2=p1;
if(s>=10) //判断和是否进位,记flag
flag=1;
else
flag=0;
if(l1end!=1) //判断链表l1是否遍历完
l1=l1->next;
if(l2end!=1) //判断链表l2是否遍历完
l2=l2->next;
}
p2->next=NULL;
L=L->next; //去头,变为不带头指针的链表L
return L;
官方题解
方法:初等数学
思路:
我们使用变量来跟踪进位,并从包含最低有效位的表头开始模拟逐位相加的过程。

image.png
图1,对两数相加方法的可视化: 342 + 465 = 807342+465=807,每个结点都包含一个数字,并且数字按位逆序存储。
R
来自于纽约时报的一则新闻,https://www.nytimes.com/2019/05/01/us/yusi-zhao-stanford-university.html,《Chinese family reporly paid $6.5 million for spot at Stanford》,文中女主人公赵思雨,其家庭为斯坦福入学名额斥资650万美元。
T
这段时间课上学习的类的继承和派生,学的有些自闭,以下是我在这段时间的学习笔记。虽然不完善,但在慢慢补充。
https://www.jianshu.com/p/ae37fe3fe73e
S
最近在学习机器学习的过程中,为了实现相关算法,特地安装了tensorflow的gpu版本,相关的官方文档如下
http://adventuresinmachinelearning.com/python-tensorflow-tutorial/
限于英文水平,我在安装的过程中并没有过多参考官方文档中的安装教程,在此向大家推荐一篇我在网络上找到觉得比较靠谱的,比较好实现的tensorflow的安装教程。
https://blog.csdn.net/hustqb/article/details/80222055