两两交换链表中的节点

给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。

思路

这道题目正常模拟就行了。//我还不熟练如何模拟,我在这方面还是差了点,毕竟还算是新手。所有链表都建议使用虚拟头结点。

复制代码
ListNode *swap(ListNode *head)
{
    ListNode *dummyhead = new ListNode(0);
    dummyhead->next=head;
    ListNode *cur=dummyHead;
    while(cur->next!=nullptr &&cur->next->next!=nullptr)
    {
        List *tmp1 = cur->next;
        List *tmp2 = cur->next->next->next;
        
        cur->next = cur->next->next;
        cur->next->next=tmp1;
        cur->next->next=tmp2;
    }
    List *result = dummyHead->next;
    delete dummyHead;
    return result;
}
成果

写完这一题,我对模拟的概念又上一层楼了,这个其实本质就是数学。

相关推荐
面对疾风叭!哈撒给1 小时前
Windows 11 系统更新操作设置停止更新的时间
windows
hold?fish:palm5 小时前
30 两两交换链表中的节点
数据结构·算法·链表
kkkkkkkkkk_Z5 小时前
学嵌入式和C语言编程数据结构|学习日记Day21:内核链表与队列学习
c语言·数据结构·学习
不正经学生5 小时前
C语言结构体:自定义数据类型,让变量打包出行
java·c语言·开发语言·数据结构·算法
程与留6 小时前
06_Qt 常用数据类型与容器:QString、QList、QVector、QMap 的性能与实现分析
数据结构·qt
林森lsjs7 小时前
队列 FIFO 原理 & 手撕两种队列实现(链表 + 循环数组)—数据结构陆
java·开发语言·数据结构·队列
小飞侠在吗7 小时前
Windows 下 Nginx 访问 127.0.0.1 报 50x 错误:根因是路径里 \t 被当成 Tab
运维·windows·nginx
H_oRIZoN_7 小时前
Linux入门DAY23(C语言树形结构)
linux·c语言·数据结构
孙克旭_7 小时前
数据结构基础:Java数组实现一次性队列
java·开发语言·数据结构·队列
间歇性努力持续性发呆的野生快乐选手7 小时前
stl容器使用和算法简介
数据结构·c++