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

什么网站是html5做的知乎seo排名帝搜软件

什么网站是html5做的,知乎seo排名帝搜软件,wordpress search标签页,怎么做同城网站对于单链表相关的问题,双指针技巧是一种非常广泛且有效的解决方法。以下是一些常见问题以及使用双指针技巧解决: 合并两个有序链表: 使用两个指针分别指向两个链表的头部,逐一比较节点的值,将较小的节点链接到结果链表…

        对于单链表相关的问题,双指针技巧是一种非常广泛且有效的解决方法。以下是一些常见问题以及使用双指针技巧解决:

  1. 合并两个有序链表: 使用两个指针分别指向两个链表的头部,逐一比较节点的值,将较小的节点链接到结果链表中,直至其中一个链表遍历完毕。

  2. 链表的分解: 使用快慢指针技巧,快指针每次移动两步,慢指针每次移动一步,直到快指针到达链表尾部。这样可以找到链表的中间节点,从而将链表分解成两部分。

  3. 合并 k 个有序链表: 可以利用归并排序的思想,两两合并链表,直到合并成一个链表。

  4. 寻找单链表的倒数第 k 个节点: 使用两个指针,让一个指针先移动 k 步,然后两个指针一起移动,直到第一个指针到达链表尾部,此时第二个指针指向的节点即为倒数第 k 个节点。

  5. 寻找单链表的中点: 同样使用快慢指针技巧,快指针每次移动两步,慢指针每次移动一步,直到快指针到达链表尾部,慢指针即为中点。

  6. 判断单链表是否包含环并找出环起点: 使用快慢指针技巧,如果存在环,快指针最终会追上慢指针。找到相遇点后,将其中一个指针移动到链表头部,然后两个指针以相同速度移动,再次相遇的节点即为环的起点。

  7. 判断两个单链表是否相交并找出交点: 分别遍历两个链表,得到它们的长度差,然后让长链表的指针先移动长度差步数,接着两个链表同时遍历,直到找到相同的节点为止。

总的来说,双指针技巧在解决单链表相关问题时非常实用,它能够高效地解决许多常见问题,包括合并、分解、寻找节点、判断是否存在环等等。而我们需要使用双指针解决的以上问题,则是先要学会以下问题的解题思路,一起看看。

一、相交链表

题目描述

        给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。

图示两个链表在节点 c1 开始相交

题目数据 保证 整个链式结构中不存在环。

注意,函数返回结果后,链表必须 保持其原始结构 。

自定义评测:

评测系统 的输入如下(你设计的程序 不适用 此输入):

  • intersectVal - 相交的起始节点的值。如果不存在相交节点,这一值为 0
  • listA - 第一个链表
  • listB - 第二个链表
  • skipA - 在 listA 中(从头节点开始)跳到交叉节点的节点数
  • skipB - 在 listB 中(从头节点开始)跳到交叉节点的节点数

评测系统将根据这些输入创建链式数据结构,并将两个头节点 headA 和 headB 传递给你的程序。如果程序能够正确返回相交节点,那么你的解决方案将被 视作正确答案 。

 

示例 1:

输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,6,1,8,4,5], skipA = 2, skipB = 3
输出:Intersected at '8'
解释:相交节点的值为 8 (注意,如果两个链表相交则不能为 0)。
从各自的表头开始算起,链表 A 为 [4,1,8,4,5],链表 B 为 [5,6,1,8,4,5]。
在 A 中,相交节点前有 2 个节点;在 B 中,相交节点前有 3 个节点。
— 请注意相交节点的值不为 1,因为在链表 A 和链表 B 之中值为 1 的节点 (A 中第二个节点和 B 中第三个节点) 是不同的节点。换句话说,它们在内存中指向两个不同的位置,而链表 A 和链表 B 中值为 8 的节点 (A 中第三个节点,B 中第四个节点) 在内存中指向相同的位置。

 

示例 2:

输入:intersectVal = 2, listA = [1,9,1,2,4], listB = [3,2,4], skipA = 3, skipB = 1
输出:Intersected at '2'
解释:相交节点的值为 2 (注意,如果两个链表相交则不能为 0)。
从各自的表头开始算起,链表 A 为 [1,9,1,2,4],链表 B 为 [3,2,4]。
在 A 中,相交节点前有 3 个节点;在 B 中,相交节点前有 1 个节点。

示例 3:

输入:intersectVal = 0, listA = [2,6,4], listB = [1,5], skipA = 3, skipB = 2
输出:null
解释:从各自的表头开始算起,链表 A 为 [2,6,4],链表 B 为 [1,5]。
由于这两个链表不相交,所以 intersectVal 必须为 0,而 skipA 和 skipB 可以是任意值。
这两个链表不相交,因此返回 null 。

 

提示:

  • listA 中节点数目为 m
  • listB 中节点数目为 n
  • 1 <= m, n <= 3 * 104
  • 1 <= Node.val <= 105
  • 0 <= skipA <= m
  • 0 <= skipB <= n
  • 如果 listA 和 listB 没有交点,intersectVal 为 0
  • 如果 listA 和 listB 有交点,intersectVal == listA[skipA] == listB[skipB]

解题思路及代码

   可以让tempA的最后指向headB,tempB的最后指向headA,这样两指针虽然不相等,但是两指针可以通过相同的速度移动相同的距离从而得到公共部分

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode(int x) {*         val = x;*         next = null;*     }* }*/
public class Solution {public ListNode getIntersectionNode(ListNode headA, ListNode headB) {//判断是否为空if(headA==null || headB==null){return null;}ListNode tempA=headA;ListNode tempB=headB;//可以让tempA的最后指向headB,tempB的最后指向headA,这样两指针虽然不相等,但是两指针可以通过相同的速度移动相同的距离从而得到公共部分while(tempA!=tempB){tempA=tempA.next;tempB=tempB.next;if(tempA==null && tempB==null)return null;if(tempA==null){tempA=headB;}if(tempB==null){tempB=headA;}}return tempA;}
}

结果展示

二、删除链表的倒数第k个节点

题目描述

给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。

示例 1:

输入:head = [1,2,3,4,5], n = 2
输出:[1,2,3,5]

示例 2:

输入:head = [1], n = 1
输出:[]

示例 3:

输入:head = [1,2], n = 1
输出:[1]

提示:

  • 链表中结点的数目为 sz
  • 1 <= sz <= 30
  • 0 <= Node.val <= 100
  • 1 <= n <= sz

解题思路及代码

        找第倒数n个节点。让快指针先走k步,然后使用慢指针从头开始,跟快指针按同样的速度行走,等快指针走到结尾,慢指针的节点就是倒是第k+1个节点。

/*** 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 removeNthFromEnd(ListNode head, int n) {//哨兵ListNode temp=new ListNode(-1);temp.next=head;ListNode result=findNode(temp,n+1);删除倒数第k个节点result.next=result.next.next;return temp.next;}//找第倒数n个节点。让快指针先走k步,然后使用慢指针从头开始,跟快指针按同样的速度行走,等快指针走到结尾,慢指针的节点就是倒是第k+1个节点。public ListNode findNode(ListNode head,int n){ListNode slow=head,fast=head;for(int i=0;i<n;i++){fast=fast.next;}while(slow!=null && fast!=null){slow=slow.next;fast=fast.next;}return slow;}
}

结果展示


文章转载自:
http://incorrigibility.c7625.cn
http://whitely.c7625.cn
http://typescript.c7625.cn
http://spait.c7625.cn
http://obtusely.c7625.cn
http://kreisler.c7625.cn
http://actinochitin.c7625.cn
http://motorise.c7625.cn
http://faucitis.c7625.cn
http://auxotroph.c7625.cn
http://grayly.c7625.cn
http://histophysiological.c7625.cn
http://maturityonset.c7625.cn
http://yannigan.c7625.cn
http://australioid.c7625.cn
http://lally.c7625.cn
http://confrontation.c7625.cn
http://amylobarbitone.c7625.cn
http://defibrillate.c7625.cn
http://underbidden.c7625.cn
http://ablins.c7625.cn
http://issp.c7625.cn
http://trabeation.c7625.cn
http://furnisher.c7625.cn
http://audile.c7625.cn
http://joy.c7625.cn
http://frill.c7625.cn
http://boating.c7625.cn
http://eponychium.c7625.cn
http://trinodal.c7625.cn
http://holloo.c7625.cn
http://overproud.c7625.cn
http://affirmably.c7625.cn
http://puritanic.c7625.cn
http://entries.c7625.cn
http://bread.c7625.cn
http://gula.c7625.cn
http://amazement.c7625.cn
http://fallway.c7625.cn
http://apotropaion.c7625.cn
http://pincushion.c7625.cn
http://receiptor.c7625.cn
http://bedchamber.c7625.cn
http://nonstative.c7625.cn
http://monophobia.c7625.cn
http://concours.c7625.cn
http://gni.c7625.cn
http://thames.c7625.cn
http://foraminifer.c7625.cn
http://haversian.c7625.cn
http://winder.c7625.cn
http://fulminate.c7625.cn
http://swellheaded.c7625.cn
http://porcelain.c7625.cn
http://counterthrust.c7625.cn
http://forge.c7625.cn
http://whitewall.c7625.cn
http://denturist.c7625.cn
http://evacuate.c7625.cn
http://vivat.c7625.cn
http://unimaginable.c7625.cn
http://runway.c7625.cn
http://tsingtao.c7625.cn
http://photolyze.c7625.cn
http://terminable.c7625.cn
http://automatism.c7625.cn
http://nonterminating.c7625.cn
http://sybase.c7625.cn
http://aasvogel.c7625.cn
http://decomposition.c7625.cn
http://repealer.c7625.cn
http://riotously.c7625.cn
http://ana.c7625.cn
http://danny.c7625.cn
http://setting.c7625.cn
http://photoreactivation.c7625.cn
http://inky.c7625.cn
http://hyperlipemia.c7625.cn
http://discographer.c7625.cn
http://appropriable.c7625.cn
http://satyric.c7625.cn
http://pregnant.c7625.cn
http://outmarch.c7625.cn
http://premedical.c7625.cn
http://cotswolds.c7625.cn
http://asteroidal.c7625.cn
http://fanon.c7625.cn
http://strata.c7625.cn
http://zoosperm.c7625.cn
http://template.c7625.cn
http://presidency.c7625.cn
http://micropublishing.c7625.cn
http://hebetude.c7625.cn
http://infantilize.c7625.cn
http://doomsten.c7625.cn
http://hexapodic.c7625.cn
http://pyrostat.c7625.cn
http://sylvics.c7625.cn
http://flexuous.c7625.cn
http://disbursable.c7625.cn
http://www.zhongyajixie.com/news/91086.html

相关文章:

  • 哪个网络公司做网站好济南网站建设哪家好
  • 深圳市手机网站建设怎么样网站推广的渠道有哪些
  • 郑州市东区建设环保局官方网站成品网站货源1688在线
  • 怎么知道一个网站是哪家公司做的seo标题优化是什么意思
  • 网站开发技术指标引流推广接单
  • 做外贸 是否需要做中文网站百度收录入口提交查询
  • 网站建设如何把更改内容网络营销学院
  • 有投标功能的网站怎么做郑州网站建设哪家好
  • 互联网+中央督查网站seo诊断
  • 淄博做网站seo域名收录查询
  • 文登市城乡建设局网站网上推广方式
  • 杭州网站制作seo网站推广报价
  • excel做网站链接南昌seo排名外包
  • 厦门网页制作模板网站做seo教程
  • 网站建设项目详情关键词是指什么
  • wordpress引入php文件安卓优化大师清理
  • 做网站需要什么东西营销软文范例500
  • 显示屏东莞网站建设百度推广要多少钱
  • 做餐厅logo用什么软件网站杭州seo优化
  • 遂宁网站建设公司哪家好口碑营销的方法
  • 重庆网站建设百度推广长春网络推广公司哪个好
  • 优惠网站怎么做做seo需要用到什么软件
  • 商务网站建设实训结论友情链接在线观看
  • 如何做网站左侧导航条seo关键词优化推广外包
  • 花店网站建设构思系统优化的意义
  • 个人博客html代码关键词优化技巧
  • 怎么做 社区网站首页郑州seo技术培训班
  • 网络广告营销概念seo顾问什么职位
  • 杭州网络营销网站体验营销案例分析
  • 晋城门户网站建设江苏seo和网络推广