日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

单链表问题(反转、是否有环、删除结尾第N个节点、合并两个sortlist、找到交点)

發(fā)布時間:2025/4/5 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 单链表问题(反转、是否有环、删除结尾第N个节点、合并两个sortlist、找到交点) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1.時間復(fù)雜度O(N),內(nèi)存O(1)的效率下實現(xiàn)單鏈表的翻轉(zhuǎn)

public static TreeNode revers(TreeNode head){TreeNode temp,first,second;first=head;second=head.next;while(second!=null){temp=second.next;second.next=first;first=second;second=temp;}head.next=null;head=first;return head;}

2.判斷一個鏈表是否存在環(huán),采用的方法是一個指針按照補償為1遍歷,另一個按照步長為2遍歷,如果重合說明有環(huán)。

public class IfHasCircle {public static boolean ifhascircle(TreeNode head){TreeNode first=head;TreeNode second=head;while(first!=null && second!=null){if(first==second){return true;}first=first.next;second=second.next.next;}return false;}

3.刪除從結(jié)尾處數(shù)第n個節(jié)點。思路是做兩個指針,一個步長比另一個長n,這樣當(dāng)長的那個節(jié)點遍歷到最后一個的時候,就直接把短的節(jié)點刪除即可。

public static TreeNode DelTheLastN(TreeNode head,int n){TreeNode first,second;first=head;second=head;for(int i=1;i<=n;i++){second=second.next;}while(second.next!=null){second=second.next;first=first.next;}first.next=first.next.next;return head;}

4.合并兩個sort list:用遞歸

static TreeNode mergTwoSortList(TreeNode l1,TreeNode l2){if(l1 == null) return l2;if(l2 == null) return l1;if(l1.val < l2.val) {l1.next = mergTwoSortList(l1.next, l2);return l1;} else {l2.next = mergTwoSortList(l2.next, l1);return l2;}}

5. 兩個鏈表相交,找出交點

求出兩個鏈表的長度a和b,一個指針指向較短鏈表的頭head,另一個指針指向較長鏈表的第head+|a-b|,然后兩個指針一起移動,相遇處即為交點。


/*** 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;int Aindex_length=getLength(headA);int Bindex_length=getLength(headB);int dis=Math.abs(Aindex_length-Bindex_length);ListNode Aindex=headA;ListNode Bindex=headB;if(Aindex_length>=Bindex_length){for(int i=0;i<dis;i++){Aindex=Aindex.next;} while(Bindex!=null){if(Aindex.val==Bindex.val){return Aindex;}else{Aindex=Aindex.next;Bindex=Bindex.next;}}}Aindex=headA;Bindex=headB;if(Aindex_length<Bindex_length){for(int i=0;i<dis;i++){Bindex=Bindex.next;} while(Aindex!=null){if(Aindex.val==Bindex.val){return Aindex;}else{Aindex=Aindex.next;Bindex=Bindex.next;}}}return null;}public int getLength(ListNode head){ListNode index=head;int length=1;while(index.next!=null){index=index.next;length++;}return length;} }


/********************************

* 本文來自博客 ?“李博Garvin“

* 轉(zhuǎn)載請標(biāo)明出處:http://blog.csdn.net/buptgshengod

******************************************/


總結(jié)

以上是生活随笔為你收集整理的单链表问题(反转、是否有环、删除结尾第N个节点、合并两个sortlist、找到交点)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: www.成人精品| 免费的av网址 | 免费看污黄网站在线观看 | 久久免费少妇高潮久久精品99 | 日韩脚交footjobhd | 成人做爰www免费看视频网站 | 日本日韩欧美 | 日韩精品91| 成人国产片 | 国产欧美日韩综合 | 国产精品成人国产乱 | 色玖玖 | 99精品在线观看视频 | 椎名由奈av一区二区三区 | 久久免费视频一区 | 麻豆精品自拍 | 亚洲久久色 | 丁香六月av | 能在线观看的av网站 | 中文天堂在线资源 | 美女网站黄频 | 午夜在线观看影院 | 熟妇人妻久久中文字幕 | 日韩福利在线播放 | 国产欧美一区二区三区在线看蜜臂 | 538在线精品视频 | 久久精品国产网红主播 | 在线免费观看一区二区三区 | 在线观看中文字幕一区 | 无码精品人妻一二三区红粉影视 | 欧美人妻日韩精品 | 亚洲精品在线91 | 午夜av成人 | 特级免费毛片 | 亚洲xxxx视频 | 欧美日韩三 | 午夜不卡影院 | 九九热九九爱 | 黄色av网站在线观看 | 人人爱国产 | 精品国产一区二区三区四区精华 | 国产日本一区二区 | 国产男男网站 | 九九热精品视频在线播放 | 天堂色av | 自拍偷拍视频在线观看 | 亚洲a成人 | 久久国产柳州莫菁门 | 中文字幕欧美亚洲 | 亚洲综合视频网 | 国产欧美久久久 | 国产91av视频 | 天天搞天天| 又色又爽又黄无遮挡的免费视频 | 欧美福利一区二区 | 欧美一区综合 | 蜜臀av免费一区二区三区水牛 | 欧美性理论片在线观看片免费 | 亚洲卡一 | 免费国产一区二区 | 黄色正能量网站 | 欧美性猛交乱大交3 | 中文字幕免费高 | 国产成人无码精品久在线观看 | 狠狠干狠狠插 | 综合国产在线 | 91热爆视频 | 国产对白videos麻豆高潮 | 中文字幕欧美专区 | 欧美一区二区成人 | 一区二区三区日韩视频 | 国产裸体网站 | 人人妻人人澡人人爽 | 欧美福利在线视频 | 玉女心经是什么意思 | 精品动漫一区二区 | 色综合99 | 免费手机av | 最新网址av | 欧美一级色片 | 欧美少妇一区 | 清纯唯美亚洲综合 | 天啪 | 久久久性视频 | 黑人黄色一级片 | 久久精品亚洲精品国产欧美 | 91精品婷婷国产综合久久 | 丰满少妇一区二区三区视频 | 精品人妻aV中文字幕乱码色欲 | 成年精品 | 国产色呦呦 | 欧美中文字幕视频 | 中国国产bdsm紧缚捆绑 | 在线观看的网站 | 久久久亚洲欧美 | 国产真实乱| 国久久| 欧美整片在线 | 亚洲高清网站 |