算法题(3)------两两交换链表中的节点

leetcode链接:24. 两两交换链表中的节点 - 力扣(LeetCode)

cpp 复制代码
struct ListNode * swapPairs(struct ListNode * head)
{
        typedef struct ListNode ListNode;
        
        ListNode *fakehead = (ListNode *)malloc(sizeof(ListNode));
        fakehead->next = head;
        ListNode* right = fakehead->next;
        ListNode *left = fakehead;

        while(left && right && right->next)
        {
            left->next = right->next;
            right->next = left->next->next;
            left->next->next = right;
            left = right;

            right = left->next;
        }

            return fakehead->next;
}
相关推荐
心仪久了会沦陷12 分钟前
C语言数据结构入门——树与二叉树详解:概念、堆实现与链式遍历
c语言·数据结构·算法
小此方17 分钟前
[算法实战论:动态规划]背包问题概念,01不满背包问题,01满背包问题,背包问题的滚动数组空间优化
算法·动态规划
悠仁さん1 小时前
【C++】哈希表
c++·算法·散列表
码少女1 小时前
数据结构——图的基础
数据结构
地平线开发者2 小时前
点云算法整理与常用计算模块:从数据到模型,再到工程与量化
算法·自动驾驶
Severus_black3 小时前
【C++初阶】list使用及相关实现,思路顺滑流畅!
c语言·数据结构·c++·stl·list
武子康4 小时前
H3-World 为何在加载 LoRA 前,先检查导入的代码?
人工智能·深度学习·算法
秋天的怀念_David5 小时前
算法一千零一夜 · 第二十八夜 注册
java·程序人生·算法
二本咕咕-机械转码5 小时前
FreeRTOS深入解析(八)IPC机制之FromISR详解
数据结构·单片机·链表
NEFU_Jyj7 小时前
贝尔数(组合数学)
算法