算法题(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;
}
相关推荐
梓䈑42 分钟前
【算法题攻略】BFS 解决FloodFill 算法、最短路问题、多源BFS 和 拓扑排序
c++·算法·宽度优先
Adios7943 小时前
设置交集大小至少为2
数据结构·算法·leetcode
来一碗刘肉面10 小时前
栈的应用(表达式求值)
数据结构·算法
xiaowang1234shs10 小时前
怪兽轻断食技术深度测评:从断食计时引擎到AI识别算法的工程实践解析
数据库·人工智能·算法·macos·机器学习·p2p·visual studio
小果因子实验室11 小时前
量化研究--策略迁移算法1研究
算法
Web极客码11 小时前
如何用三段式确定性剪枝,为 LLM Agent 砍掉 35% 的 Token 成本?
服务器·人工智能·算法·机器学习
程序猿乐锅11 小时前
【数据结构与算法 | 第六篇】力扣1109,1094差分数组
java·算法·leetcode
wabs66612 小时前
关于图论【广度优先搜索的理论基础】
算法·图论·宽度优先
孤魂23312 小时前
逻辑回归算法
算法·机器学习·逻辑回归