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

leetcode 第二题:两数相加-C语言实现

题目地址

备注:

  1. 不要忘记最后一个进位的可能。
  2. 可以使用typedef,来简化struct的书写

代码实现:

#include<stdio.h>
#include<stdlib.h>struct listNode {int val;struct listNode* next;
};// 使用typedef
typedef struct listNode listNodeT;
typedef struct listNode* listNodePtr;listNodePtr addTwoNumbers(listNodePtr list1, listNodePtr list2) {listNodePtr head = NULL, tail = NULL;int jinWei = 0;while (list1 != NULL || list2 != NULL){// 这里需要改进,学习了int tempValue1 = list1 ? list1->val : 0;int tempValue2 = list2 ? list2->val : 0;/*if (list1 != NULL){tempValue1 = list1->val;}if (list2 != NULL){tempValue2 = list2->val;}*/// 这里需要改进,学习了。int sum = tempValue1 + tempValue2 + jinWei;//if (jinWei)//{//	sum = tempValue1 + tempValue2 + 1;//	jinWei = 0;//}//else {//	sum = tempValue1 + tempValue2;//}if (head == NULL){head = tail = malloc(sizeof(listNodeT));if (head && tail){head->val = sum % 10;head->next = NULL;tail->next = NULL;}}else {tail->next = malloc(sizeof(listNodeT));if (tail->next){tail = tail->next;tail->val = sum % 10;tail->next = NULL;}}// 值得学习的代码jinWei = sum / 10;if (list1){list1 = list1->next;}if (list2){list2 = list2->next;}}if (jinWei){tail->next = malloc(sizeof(listNodeT));if (tail->next) {tail = tail->next;tail->val = 1;tail->next = NULL;}}return head;
}
http://www.lryc.cn/news/7423.html

相关文章:

  • 【人工智能】PTP网络时钟服务器在智能驾驶里的重要性
  • 【蓝桥杯集训3】二分专题(3 / 5)
  • 在成都的哪个培训机构学习Java好呢?
  • 传输层重要协议之UDP协议和TCP协议详解
  • BNB Greenfield 成存储赛道“新贵”,BNB 生态的野心与破局
  • 【SQL开发实战技巧】系列(十六):时间类型操作(上):日、月、年、时、分、秒之差及时间间隔计算
  • JavaScript知识点总结
  • adb命令记录
  • 9.Docker Swarm
  • 基于tensorflow keras DNN神经网络训练预测豆瓣中文影评差评好评 附完整代码 +数据
  • 商城系统必备营销工具(五)——积分商城
  • SpringBoot08:Shiro
  • 进击中的 Zebec 生态,Web2 与 Web3 世界的连接器
  • SpringCloud保姆级搭建教程五---Redis
  • 存储类别、链接与内存管理(一)
  • JS设计模式
  • 四、常用样式讲解二
  • KDHX-8700无线高压核相相序表
  • 【C++提高笔记】泛型编程与STL技术
  • 实用机器学习-学习笔记
  • 2023-02-15 学习记录--React-邂逅Redux(二)
  • Framework——【MessageQueue】消息队列
  • SpringBoot依赖原理分析及配置文件
  • 智慧机场,或将成为航空领域数字孪生技术得完美应用
  • SQL64 对顾客ID和日期排序
  • MybatisPlus使用聚合函数
  • 工程管理系统源码企业工程管理系统简介
  • 《计算机视觉和图像处理简介 - 中英双语版》:使用 OpenCV对图像进行空间滤波
  • FreeRTOS软件定时器 | FreeRTOS十三
  • 电脑文件被误删?360文件恢复工具,免费的文件恢复软件