首页 > 其他分享 >力扣简876 链表的中间节点

力扣简876 链表的中间节点

时间:2023-02-27 11:34:28浏览次数:44  
标签:力扣 head ListNode temp 876 next 链表 null 节点

只要一个一步一步走 另一个指针两步两步走 然后快的走到终点 慢的就是中点
//只有两种情况 一种中间节点有一个 一种有两个 分开讨论一下
public static ListNode middleNode(ListNode head) {
        ListNode temp=head;
        while(temp.next!=null&&temp.next.next!=null) {
            head=head.next;
            temp=temp.next.next;
        }
        if(temp.next!=null) {//只有两种情况 一种中间节点有一个 一种有两个 分开讨论一下
            head=head.next;
        }            
        return head;
        
    }

 

标签:力扣,head,ListNode,temp,876,next,链表,null,节点
From: https://www.cnblogs.com/ayuanjiejie/p/17159088.html

相关文章

  • 力扣简557 反转字符串的单词2
    刚开始尝试像数组一样直接用找到一个单独的字符串就首尾双指针调换报错才知道java的String类一旦创建就不可以改变了又去看了字符串发现StringBuffer类型可以改变并且......
  • [数据结构] 单链表
    一、C语言实现1.1结构体定义typedefintElementType;//定义一个链表结构体structListNode{ElementTypeval;structListNode*next;};1.2相关方法......
  • lc21合并两个有序链表
    ​​21.合并两个有序链表​​难度简单2934收藏分享切换为英文接收动态反馈将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组......
  • 数组类目:力扣88. 合并两个有序数组
    思路:代码:classSolution{publicvoidmerge(int[]nums1,intm,int[]nums2,intn){intlen1=m-1;intlen2=n-1;intlen=m+......
  • 数学类目:力扣66. 加一
    思路:代码:publicint[]plusOne(int[]digits){intlen=digits.length;for(inti=len-1;i>=0;i--){digits[i]++;digit......
  • 数组类目:力扣1502.判断能否形成等差数列
    代码:publicbooleancanMakeArithmeticProgression(int[]arr){//数组排序Arrays.sort(arr);for(inti=0;i<arr.length-2;i++){......
  • 数组类目:力扣35
    思路:二分法代码模板(背会即可)classSolution{publicintsearchInsert(int[]nums,inttarget){intleft=0,right=nums.length-1;//注意wh......
  • pat乙级链表问题
    链表题目:一开始以为要按照链表那样一个一个搞,看完这个后思路清晰:1025链表一连a三题链表题。在输入完链表之后,遍历链表使用另一个数组(可以是指针数组也可以是节点数组)记录......
  • 时间击败100%用户的快慢指针删除链表中的倒数第n个节点算法
    //给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 ///***Definitionforsingly-linkedlist.*publicclassListNode{*intval;*ListNoden......
  • <力扣日常>9. 回文数
    classSolution{public:boolisPalindrome(intx){//复制X的值inty=x;//先去除负数和个位数的判断if(y<0){......