当前位置: 首页 > news >正文

在做题中学习(66):两数相加

解法:模拟

思路:定义一个变量t,存储相加后的结果,个位赋给新节点,十位(表示有进位)留下,累加到下一次加法(相当于+上进位)。while里即便cur1和cur2都为空了,但上次的t还存在进位,就继续添加新节点,所以t也需要在while判断。

class Solution {
public:ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {ListNode* cur1 = l1,*cur2 = l2;ListNode* newhead = new ListNode(0);ListNode* prev = newhead;int l = 0,r = 0,t = 0;while(cur1 || cur2 || t){if(cur1){t += cur1->val;cur1 = cur1->next;}if(cur2){t += cur2->val;cur2 = cur2->next;}//t里已有定数prev->next = new ListNode(t % 10);prev = prev->next;t /= 10;}return newhead->next;}
};


http://www.mrgr.cn/news/56463.html

相关文章:

  • 【JavaEE】【IO】文件操作
  • 即时通讯 离线消息处理初版
  • 什么是以太坊?
  • MySQL8.0.28解压版安装windows
  • 文献阅读:通过深度神经网络联合建模多个切片构建3D整体生物体空间图谱
  • 炒股看分时图,这些知识你知道吗?
  • 每日OJ题_牛客_字符串分类_哈希+排序_C++_Java
  • 算法Day-7
  • Log4j和SLF4J在Java中打印日志的区别
  • 大厂面试真题-Redis的Cluster模式的smart clent了解吗,怎么初始化的
  • 上传文件到云存储前端报错413 Request Entity Too Large
  • 智能工厂的软件设计 结构映射、类比推理及信念修正
  • AcWing 11 背包问题求方案数
  • MybatisPlus入门(一)MybatisPlus简介
  • 字节流写入文件
  • 理解CPU怎么执行一条指令
  • 【flask web】 Blueprint 蓝图 路由模块化
  • 2、图像的特征
  • 技术经济学·技术经济分析指标体系与基本原则
  • 在金融领域,机器学习算法优化的成功案例有哪些?
  • 【C++复习】Map Set HashMap HashSet的模拟实现{代码分享}
  • 马拉车算法(C/C++)
  • 3184. 构成整天的下标对数目 I
  • 车规芯片SOC简介
  • web服务器介绍
  • 图文深入理解Oracle Total Recall