C++取经之路

链表的定义

// 单链表
struct ListNode{
	int val;  // 数据域
	ListNode *next;  // 指针域
	ListNode(int x) : val(x) , next(null) {}  // 构造函数
};

节点初始化

// 节点初始化
	//  构造初始化
	ListNode *head1 = new Listnode(5);
	//	默认初始化
	ListNode *head2 = new ListNode();
	head2->val = 5;	

遇见的问题

1、变量定义问题

变量定义问题,变量定义在判断条件里面,后面用到此变量的时候报错,定义到外部则恢复正常。
变量定义问题,变量定义在判断条件里面,后面用到此变量的时候报错,定义到外部则恢复正常
显示如图错误,变量未定义
显示如图错误,变量未定义。

2、代码逻辑错误

在这里插入图片描述
flag_add 表示 是否进位的flag。n1,n2表示两个数,flag_add表示是否有进位。

原来的逻辑: 计算当前两数字之和时,把上一时刻的进位值计算利用后,给置空。在判断当前总和的大小来确定下一步的进位标志。

bug: 由于没有用一个变量储存总和,所以改变flag_add时,也会改变总和值,进而出现错误。

3、链表理解有误

在这里插入图片描述
正确理解:head和result 是两个指针,首先指向同一块内存,然后result依次去生成链表的其他的部分。head是在头节点上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值