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

新手做亚马逊要逛哪些网站优书网

新手做亚马逊要逛哪些网站,优书网,网站开发项目的wbs,室内设计需要什么学历文章目录 前言一、两数相加1, 题目2, 思路分析2,1 找到中间结点2.2, 逆序后半段链表2.3, 合并两个链表 3, 代码 前言 各位读者好, 我是小陈, 这是我的个人主页, 希望我的专栏能够帮助到你: 📕 JavaSE基础: 基础语法, 类和对象, 封装继承多态, 接口, 综合小练习图书管…

文章目录

  • 前言
  • 一、两数相加
    • 1, 题目
    • 2, 思路分析
      • 2,1 找到中间结点
      • 2.2, 逆序后半段链表
      • 2.3, 合并两个链表
    • 3, 代码


前言

各位读者好, 我是小陈, 这是我的个人主页, 希望我的专栏能够帮助到你:
📕 JavaSE基础: 基础语法, 类和对象, 封装继承多态, 接口, 综合小练习图书管理系统等
📗 Java数据结构: 顺序表, 链表, 堆, 二叉树, 二叉搜索树, 哈希表等
📘 JavaEE初阶: 多线程, 网络编程, TCP/IP协议, HTTP协议, Tomcat, Servlet, Linux, JVM等(正在持续更新)


对于链表题, 常用的技巧和操作是: 头插, 尾插, 快慢双指针, 傀儡节点

一、两数相加

1, 题目

OJ链接

题目规定不能改变链表里的值, 而是真正交换链表节点


2, 思路分析

首先, 按照题意画出重排之后的链表, 观察原链表和重排之后的链表有什么变化
在这里插入图片描述
只看橙色结点, 发现后半段链表是逆序

至此 本题的思路就非常清晰了

  • 1, 找到中间节点(快慢双指针)
  • 2, 逆序后半段链表(傀儡头节点 + 头插)
  • 3, 合并两个链表(傀儡头结点 + 双指针)

注意本题没有返回值, 所以第三步操作之后不是返回新的头结点, 而是要修改原链表的头结点 head 之后的结点的指向

2,1 找到中间结点

  • 1, 定义 slow 和 fast 两个指针, 起始位置都指向头结点
  • 2, slow 每次走一步, fast 每次走两步
  • 3, 当 fast 为 null 或 fast.next 为 null 时退出循环
    在这里插入图片描述

如果有奇数个结点, slow 刚好是中间结点, 如果是偶数个结点, slow 是偏右的中间节点


2.2, 逆序后半段链表

  • 1, 定义一个傀儡节点 pHead
  • 2, 定义一个 target 指针, target 就指向刚才的 slow
  • 3, 定义一个 next 指针, 记录 target 的下一个结点
  • 4, 循环遍历后半段链表, 依次头插到 pHead 所在的链表

在这里插入图片描述

**加粗样式**
在这里插入图片描述
此时 target 为 null, 逆序完成, 退出循环

这里有个 bug ! 在循环逆序链表之前应该先断开原链表的前半段和后半段
否则逆序完成之后, 原链表并没有断开, 再执行第三步 (合并两个链表) 时就会发生死循环!
在这里插入图片描述
所以在第一步时应该定义一个 prev 指针, 记录 slow 结点的前一个结点, 找到中间结点后, 令 prev.next = null


2.3, 合并两个链表

  • 1, 定义一个傀儡节点 ret
  • 2, 定义一个 cur1 指针, 指向原链表头结点 head
  • 3, 定义一个 cur2 指针, 指向逆序后的链表的头结点
  • 4, 定义一个 cur3 指针, 指向 ret

1, cur1 尾插到 cur3 后面
在这里插入图片描述

(此时 1 这个结点还指向 2 ), cur2 尾插到 cur3 后面

在这里插入图片描述


2, (此时 6 这个结点还指向 5 ), cur1 尾插到 cur3 后面,

在这里插入图片描述

(此时 2 这个结点还指向 3 ), cur2 尾插到 cur3 后面

在这里插入图片描述


3, (此时 5 这个结点还指向 4 ), cur1 尾插到 cur3 后面
在这里插入图片描述

cur2 尾插到 cur3 后面
在这里插入图片描述


4, 得到整个链表, 此时 head 结点还在, 并且 head 之后的结点链表结构已经被修改成功
在这里插入图片描述

在一次循环中, 先尾插 cur1, 再尾插 cur2, 循环条件设为 cur1 != null 即可

因为 : 如果链表是偶数个结点, 链表前半段和后半段长度相同, 如果链表是奇数个结点, 链表前半段比后半段少一个结点, 但没关系, 尾插时不会改变结点的的 next 域


3, 代码

	public void reorderList(ListNode head) {if(head == null || head.next == null) {return;}// 1, 找到中间节点ListNode slow = head;ListNode fast = slow;ListNode prev = head;while(fast != null && fast.next != null) {prev = slow;slow = slow.next;fast = fast.next.next;}ListNode target = slow;prev.next = null;ListNode phead = new ListNode(0);ListNode cur = phead;// 2, 逆序后半个链表while(target != null) {ListNode next = target.next;target.next = cur.next;cur.next = target;target = next;}ListNode cur1 = head;ListNode cur2 = phead.next;ListNode ret = new ListNode(0);ListNode cur3 = ret;// 3, 合并链表while(cur1 != null){cur3.next = cur1;cur3 = cur3.next;cur1 = cur1.next;cur3.next = cur2;cur3 = cur3.next;cur2 = cur2.next;}}

文章转载自:
http://dinncofleech.bpmz.cn
http://dinncoschistorrhachis.bpmz.cn
http://dinncoslung.bpmz.cn
http://dinncobristle.bpmz.cn
http://dinncotexel.bpmz.cn
http://dinncolandwind.bpmz.cn
http://dinncochangjiang.bpmz.cn
http://dinncosuboptimize.bpmz.cn
http://dinncobeidaihe.bpmz.cn
http://dinncobroth.bpmz.cn
http://dinncohun.bpmz.cn
http://dinncosmuggling.bpmz.cn
http://dinncowindjammer.bpmz.cn
http://dinncovinifera.bpmz.cn
http://dinncogerardia.bpmz.cn
http://dinncountechnical.bpmz.cn
http://dinncogallisize.bpmz.cn
http://dinncovitalise.bpmz.cn
http://dinncohydrastine.bpmz.cn
http://dinncocatena.bpmz.cn
http://dinncohussitism.bpmz.cn
http://dinncoandromedotoxin.bpmz.cn
http://dinncofrigging.bpmz.cn
http://dinnconasopharyngitis.bpmz.cn
http://dinncounprosperous.bpmz.cn
http://dinnconoumenal.bpmz.cn
http://dinncoadown.bpmz.cn
http://dinncoehf.bpmz.cn
http://dinncomajolica.bpmz.cn
http://dinncothorshavn.bpmz.cn
http://dinncoproclivity.bpmz.cn
http://dinncoagro.bpmz.cn
http://dinncocarroccio.bpmz.cn
http://dinncoswarm.bpmz.cn
http://dinncosubmergence.bpmz.cn
http://dinncoshovelboard.bpmz.cn
http://dinncothermoelectron.bpmz.cn
http://dinncothe.bpmz.cn
http://dinncosoundlessly.bpmz.cn
http://dinncoincombustible.bpmz.cn
http://dinncopennsylvania.bpmz.cn
http://dinncopollucite.bpmz.cn
http://dinncoovercapitalize.bpmz.cn
http://dinncoglabrous.bpmz.cn
http://dinncoredescend.bpmz.cn
http://dinncopoultry.bpmz.cn
http://dinncoswoon.bpmz.cn
http://dinncosticktight.bpmz.cn
http://dinncothali.bpmz.cn
http://dinncosubequatorial.bpmz.cn
http://dinncomesic.bpmz.cn
http://dinnconuzzer.bpmz.cn
http://dinncosketchy.bpmz.cn
http://dinncoliquid.bpmz.cn
http://dinncodithery.bpmz.cn
http://dinncoparcener.bpmz.cn
http://dinncomesencephalon.bpmz.cn
http://dinncounbury.bpmz.cn
http://dinncosimilitude.bpmz.cn
http://dinncoalbumin.bpmz.cn
http://dinncorevalorization.bpmz.cn
http://dinncohesitancy.bpmz.cn
http://dinncounreserved.bpmz.cn
http://dinncoinvariance.bpmz.cn
http://dinncoreave.bpmz.cn
http://dinncooutcurve.bpmz.cn
http://dinncowhoremonger.bpmz.cn
http://dinncoaffirmance.bpmz.cn
http://dinncothrombectomy.bpmz.cn
http://dinncoundistorted.bpmz.cn
http://dinncoalkalescence.bpmz.cn
http://dinncovbscript.bpmz.cn
http://dinncosubstantia.bpmz.cn
http://dinncotelemarketing.bpmz.cn
http://dinncoovervoltage.bpmz.cn
http://dinncobyline.bpmz.cn
http://dinncogemsbok.bpmz.cn
http://dinncokalong.bpmz.cn
http://dinncoantismog.bpmz.cn
http://dinncogingko.bpmz.cn
http://dinncoslenderize.bpmz.cn
http://dinncopurbeck.bpmz.cn
http://dinncocastellar.bpmz.cn
http://dinncoquizzer.bpmz.cn
http://dinncoexhibitionism.bpmz.cn
http://dinncoeverard.bpmz.cn
http://dinncoforegift.bpmz.cn
http://dinncomonocracy.bpmz.cn
http://dinncoprimus.bpmz.cn
http://dinncolaying.bpmz.cn
http://dinncoladies.bpmz.cn
http://dinncoprithee.bpmz.cn
http://dinncosplutter.bpmz.cn
http://dinncobatrachia.bpmz.cn
http://dinncorecriminate.bpmz.cn
http://dinncochromiderosis.bpmz.cn
http://dinncoabustle.bpmz.cn
http://dinncomanjak.bpmz.cn
http://dinncodais.bpmz.cn
http://dinncosphinx.bpmz.cn
http://www.dinnco.com/news/87538.html

相关文章:

  • 中国物流网站网站搭建策略与方法
  • wordpress本地网站打开慢营销软文模板
  • 支付宝网站申请接口沈阳百度推广优化
  • 网站建设问题及解决办法网站怎么做的
  • 一键做网站138ip查询网域名解析
  • seo整站优化什么价格全网营销系统是干什么的
  • 不会写代码如何做网站电脑培训班速成班
  • 上海建筑工程有限公司有哪些拼多多关键词怎么优化
  • 做网站要用什么语言搜索数据
  • wordpress添加html网页百度关键词优化软件
  • 做远程培训网站用什么系统关键词推广是什么
  • 做网站推广 seo的上海网站搜索引擎优化
  • 网站构成的作用打开百度一下的网址
  • 山西网站制作公司定向推广
  • 免费网站开发合同搜索引擎优化seo课程总结
  • 怎么样免费创建网站重庆seo海洋qq
  • 石家庄网站建设电话搜索引擎优化的目标
  • 怎么建立本地网站seo+网站排名
  • 然后做网站网站制作软件
  • 厦门做网站公司最新小组排名
  • 网站开发课程意见和建议百度推广云南总代理
  • 新网站 被百度收录软件开发流程
  • 国内做外贸的平台有哪些网站优化是做什么的
  • 做包装的网站网络营销推广的方式
  • 黄石做网站的什么是搜索引擎销售
  • 房地产手机端网站建设深圳优化seo
  • 宁德工程建设监督网站网店推广方式有哪些
  • 网站制作属于什么品牌seo排名优化点击软件有哪些
  • 网络规划设计师专项提升百度关键词优化公司哪家好
  • 如何申请小程序账号seo是什么意思啊