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

php网站登录系统怎么做企业网站管理系统 源码

php网站登录系统怎么做,企业网站管理系统 源码,网站规划与网站建设,网页图片转换成pdf文件题目是:给两个非空的链表,表示两个非负整数。它们每位数都是按照逆序的方式存储,并且每一个节点只能存储一位数字。现在两个数相加,并且以相同的形式返回一个表示和的链表。 首先回顾一下,什么是链表?链表…

题目是:给两个非空的链表,表示两个非负整数。它们每位数都是按照逆序的方式存储,并且每一个节点只能存储一位数字。现在两个数相加,并且以相同的形式返回一个表示和的链表

首先回顾一下,什么是链表?链表是一种数据结构,由一系列的节点组成,每一个节点有两个部分:一部分是存储数据元素,一部分是存储下一个节点地址的指针。

在解答这个题目过程中还运用到进位,进位是一种运算形式,加法运算中,每一数位上的数相加满十,则用一个高位上的数记其和1

既然是链表运算,就先定义一个链表节点的构造函数:

 class ListNode {constructor(val, next = null) {this.val = val;this.next = next;}
}

在运算的函数里面,首先要定义一个头节点:

let Head = new ListNode(0);

定义一个表示当前节点的变量:

let current = Head;

进位标志为:

let carry = 0;

遍历链表:

while (l1 !== null || l2 !== null) { // 当两个链表中任意一个不为空时继续循环let n1 = l1 === null ? 0 : l1.val; // 若l1为空,则取值为0let n2 = l2 === null ? 0 : l2.val; // 若l2为空,则取值为0let sum = n1 + n2 + carry; // 计算当前位和进位之和carry = Math.floor(sum / 10); // 计算新的进位current.next = new ListNode(sum % 10); // 创建新节点,并设置其值为和除以10的余数current = current.next; // 移动到下一个节点if (l1 !== null) l1 = l1.next; // 移动l1指针if (l2 !== null) l2 = l2.next; // 移动l2指针}

如果进位标志大于0,那就在链表后面添加一个新的节点:

  if (carry > 0) {current.next = new ListNode(carry);}

最后返回链表。

完整代码如下:

class ListNode {constructor(val, next = null) {this.val = val;this.next = next;}
}/*** @param {ListNode} l1* @param {ListNode} l2* @return {ListNode}*/
var addTwoNumbers = function(l1, l2) {
let dummyHead = new ListNode(0); // 创建一个虚拟头节点let current = dummyHead; // 当前节点指针,初始指向虚拟头节点let carry = 0; // 进位标志while (l1 !== null || l2 !== null) { // 当两个链表中任意一个不为空时继续循环let n1 = l1 === null ? 0 : l1.val; // 若l1为空,则取值为0let n2 = l2 === null ? 0 : l2.val; // 若l2为空,则取值为0let sum = n1 + n2 + carry; // 计算当前位和进位之和carry = Math.floor(sum / 10); // 计算新的进位current.next = new ListNode(sum % 10); // 创建新节点,并设置其值为和除以10的余数current = current.next; // 移动到下一个节点if (l1 !== null) l1 = l1.next; // 移动l1指针if (l2 !== null) l2 = l2.next; // 移动l2指针}// 如果最后还有进位,则在链表末尾添加一个新的节点表示这个进位if (carry > 0) {current.next = new ListNode(carry);}return dummyHead.next;
};
http://www.yayakq.cn/news/298633/

相关文章:

  • 建设银行代发工资网站网站ftp上传工具哪个好用
  • 广州学习网站建设关键词排名点击软件怎样
  • 门户网站开发报价石家庄网站建设网站
  • 宁波企业制作网站网站设计优点
  • 做代销的网站广州专业网站建设报价
  • 手机分销网站网站前端设计理念
  • 温州网站优化排名深圳外贸公司名单
  • 德阳网站设计上优化seo
  • 广州网站改版 网站建设灰色关键词排名方法
  • 布吉网站建设公司大连的网站设计公司电话
  • 关于建设官方网站的申请荆州网站开发
  • 天津公司网站建设公司哪家好自助定制网站开发公司
  • 域名和网站空间相互做解析做wordpress挣钱
  • 网站的大量图片存储格式注册网站怎么做
  • 网站不做301可以吗重庆做网站 帮助中心
  • 策划书网站那些网站容易做淘宝推广
  • wap网站推荐电商erp网站开发
  • 太原网站建设策划微商城官网地址
  • 怎么制作网站的二维码去哪接单做网站
  • 淘宝做网站退款企业建设网站怎么做账
  • 传统网站建设团队自己开公司需要多少资金
  • 公益网站模板搬瓦工建wordpress
  • 网站建设谈单思路怎么制作游戏app软件
  • 网站建设+公司服装公司做哪个网站
  • 做设计常逛的网站泰州市网站制作公司
  • seo网站优化价格福州企业网站维护价格低
  • 珠海专业医疗网站建设百度广州给做网站公司
  • 网站建设Z亿玛酷1流量订制牡丹江市广告公司
  • 360推广做网站建设网站学习
  • 手机网站建设收费秦皇岛网站建设哪家好