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

生鲜网站建设规划书样板电商运营seo

生鲜网站建设规划书样板,电商运营seo,自学网页设计需要学习什么,php网站开发优点给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不会以 0 开…

给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。
请你将两个数相加,并以相同形式返回一个表示和的链表。
你可以假设除了数字 0 之外,这两个数都不会以 0 开头。

在这里插入图片描述
输入:l1 = [2,4,3], l2 = [5,6,4]
输出:[7,0,8]
解释:342 + 465 = 807.
示例 2:

输入:l1 = [0], l2 = [0]
输出:[0]
示例 3:

输入:l1 = [9,9,9,9,9,9,9], l2 = [9,9,9,9]
输出:[8,9,9,9,0,0,0,1]

提示:

每个链表中的节点数在范围 [1, 100] 内
0 <= Node.val <= 9
题目数据保证列表表示的数字不含前导零

开篇思路(半错误思路):

以为把两个链表数相加,然后再一个个取出来放到链表里面就行了,没想到超int,long的范围…

思路:

首先判断两个链表哪个长,然后按照长的循环,短的循环完了以后就不用继续循环了
然后两个数相加容易进位(>=10),所以next 用于存储进位数,然后sum用于统计两个链表数和next相加
然后就是取整,取余的过程,最后可能存在next进位,所以需要判断是否为0
最后再倒序存一遍就行了

初步结题:

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode() {}*     ListNode(int val) { this.val = val; }*     ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/
class Solution {public ListNode addTwoNumbers(ListNode l1, ListNode l2) {int len = 0, len2 = 0;ListNode nodes = null;ListNode t1 = l1,t2 = l2;//判断 哪个链表比较长while (t1 != null) {t1 = t1.next;len++;}while (t2 != null) {t2 = t2.next;len2++;}int next = 0;if (len >= len2){for (int i = 0 ; i < len ; i++){if (l2 != null){int sum = l1.val + l2.val + next;next = sum / 10;int now = sum % 10;nodes = addL(nodes,now);l2 = l2.next ;} else {int sum = l1.val + next;next = sum / 10;int now = sum % 10;nodes = addL(nodes,now);}l1 = l1.next ;}}else {for (int i = 0 ; i < len2 ; i++){if (l1 != null ){int sum = l1.val + l2.val + next;next = sum / 10;int now = sum % 10;nodes = addL(nodes,now);l1 = l1.next ;} else {int sum = l2.val + next;next = sum / 10;int now = sum % 10;nodes = addL(nodes,now);}l2 = l2.next ;}}//最后超范围 如果最后一位是9,需要进一位if (next != 0){nodes = addL(nodes,next);}//反着存一遍ListNode nodesLast = null;//判断 哪个链表比较长while (nodes != null) {nodesLast = addL(nodesLast,nodes.val);nodes = nodes.next;}return nodesLast;}private ListNode addL(ListNode next,int val){if (next == null) {next = new ListNode(val);} else {next = new ListNode(val, next);}return next;}
}

加深: 后续感觉遍历的时候可以优化循环判断,写那么多for循环重复代码太多

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode() {}*     ListNode(int val) { this.val = val; }*     ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/
class Solution {public ListNode addTwoNumbers(ListNode l1, ListNode l2) {ListNode nodes = null;int tree = 0;while (l1 != null || l2 != null){int c1 = l1 != null ? l1.val : 0;int c2 = l2 != null ? l2.val : 0;int sum = c1 + c2 + tree;tree = sum / 10;int now = sum % 10;nodes = addL(nodes,now);l1 = l1 != null ? l1.next : null;l2 = l2 != null ? l2.next : null;}//最后超范围 如果最后一位是9,需要进一位if (tree != 0){nodes = addL(nodes,tree);}//反着存一遍ListNode nodesLast = null;//判断 哪个链表比较长while (nodes != null) {nodesLast = addL(nodesLast,nodes.val);nodes = nodes.next;}return nodesLast;}private ListNode addL(ListNode next,int val){if (next == null) {next = new ListNode(val);} else {next = new ListNode(val, next);}return next;}
}
http://www.ds6.com.cn/news/33908.html

相关文章:

  • 临沂做网站价格东莞seo收费
  • 企业网站建设知乎最大免费发布平台
  • 软装设计公司网站网络销售怎么学
  • 企业为什么做网站 图片网站怎么推广
  • 烟台 网站建设多少钱seo策略
  • anaconda可以做网站吗一个网站的seo优化有哪些
  • 代理登录网站seo咨询解决方案
  • 企业网站建设项目描述百度如何做推广
  • 紫色的网站杭州排名优化公司电话
  • 徐州市徐州市城乡建设局网站西安seo管理
  • 专业网站开发建设百度投放广告怎么收费
  • 公司网站开发微营销
  • 新西兰网站后缀重庆seo推广服务
  • 贵阳做网站seo最有效的推广方式
  • 网站怎么关键字优化网络营销和传统营销有什么区别
  • 企业网站建设哪家专业百度网盘人工客服
  • 营销网站的搭建seo点击排名工具
  • 网站升级需要什么跨境电商营销推广
  • 企业微信开发框架seo是指什么意思
  • 共享网站哪里建最新军事消息
  • 天津做网站好的公司外包网站
  • 建筑网站汇总自己如何注册网站
  • 地图网站开发站外推广
  • 专业的网站建设与优化网络营销师
  • 免费10大看盘软件网站seo软件
  • seo网站地图最近的国内新闻
  • 做养生网站需要什么资质统计网站流量的网站
  • 网站建设福州网站设计制作的服务怎么样
  • 购买网站外链2022年新闻热点事件
  • 长春做网站搜吉网传媒网络营销公司做什么