首页 > 其他分享 >LeetCode24 两两交换链表中的节点

LeetCode24 两两交换链表中的节点

时间:2024-11-25 21:11:26浏览次数:8  
标签:ListNode cur next 链表 LeetCode24 node2 节点

LeetCode24 两两交换链表中的节点

题目链接:LeetCode24

描述

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

image-20241125210454378

示例

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

思路

代码

class Solution {
    public ListNode swapPairs(ListNode head) {
        ListNode dummy = new ListNode(0,head);
        ListNode cur = dummy;
        while(cur.next != null && cur.next.next != null){
            ListNode node1 = cur.next;
            ListNode node2 = cur.next.next;
            cur.next = node2;
            node1.next = node2.next;
            node2.next = node1;
            cur = cur.next.next;
        }
        return dummy.next;
    }
}

标签:ListNode,cur,next,链表,LeetCode24,node2,节点
From: https://www.cnblogs.com/dwhere/p/18568753

相关文章

  • 206. 反转链表
    题目自己一开始的思路是对链表的每个节点的val进行更改,然后就没有然后了……没写出来然后看了卡哥的讲解感触最深的点是卡哥是让结点间的指向发生改变(换句话说,改变了节点的next),然后顺着这个思路卡哥给出了两个方法:双指针法和递归法。特别要给卡哥的视频讲解点个大大的赞,所有......
  • 数据结构第二章双链表的相关操作
    带头结点的双链表的实现以及一系列操作#include<stdio.h>#include<stdlib.h>//定义双链表节点结构体typedefstructDNode{intdata;structDNode*prior;structDNode*next;}DNode,*DLinkList;//初始化双链表voidInitList(DLinkList&L){......
  • LeetCode19 删除链表的倒数第 N 个结点
    LeetCode19删除链表的倒数第N个结点题目链接:LeetCode19描述给你一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。示例输入:head=[1,2,3,4,5],n=2输出:[1,2,3,5]思路定义fast指针和slow指针,初始值为虚拟头结点fast首先走n+1步fast和slow同时移动,直......
  • 【剑指Offer刷题系列】两个单链表相交的起始节点
    问题描述给你两个单链表的头节点headA和headB,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回null。图示两个链表在节点c1开始相交:题目数据保证整个链式结构中不存在环。注意,函数返回结果后,链表必须保持其原始结构。自定义评测:......
  • leetcode240
    leetcode240思路:我们将矩阵逆时针旋转45度,可以发现矩阵变成了一个二叉搜索树,往左走是小,往右走是大。这样就能以matrix[0][j]为根开始搜索。classSolution{//10:20~10:28publicbooleandoSearch(int[][]matrix,inti,intj,inttarget){if(i>=matrix.......
  • 707. 设计链表
    题目这题卡哥的讲解视频特别好,涵盖了很多细节。自己跟着卡哥代码敲了一遍。单链表:classMyLinkedList{public:structLinkedNode{intval;LinkedNode*next;LinkedNode(intval):val(val),next(nullptr){}};MyLinkedList()......
  • 2024/11/24 链表
    链表1.类型(1)单链表(2)双链表(3)循环链表2.链表在内存的存储方式数组是在内存中是连续分布的,但是链表在内存中可不是连续分布的,而是散乱分布在内存中的某地址上,分配机制取决于操作系统的内存管理。链表是通过指针域的指针链接在内存中各个节点。3.链表的定义定义......
  • 牛客面试必刷TOP101之链表专项
    个人主页:C++忠实粉丝欢迎点赞......
  • PyODPS节点实现避免将数据下载到本地
    本文为您介绍PyODPS如何避免将数据下载到本地。背景信息PyODPS提供了多种方便下载数据到本地的方法。因此,在设备允许的情况下,可以把数据下载到本地处理,然后再上传至MaxCompute。但是这种操作非常低效,数据下载到本地进行处理,无法使用MaxCompute的大规模并行能力。当数据量大于......
  • PyODPS节点实现结巴中文分词
    本文为您介绍如何使用DataWorks的PyODPS类型节点,结合开源结巴中文分词库,对数据表中的中文字段进行分词处理并写入新的数据表,以及如何通过闭包函数使用自定义词典进行分词。前提条件已创建DataWorks工作空间并绑定了MaxCompute计算引擎创建工作空间。背景信息DataWorks为您......