【leetcode-两两交换链表中的节点】

迭代法

java 复制代码
  public ListNode swapPairs(ListNode head) {
        if(head==null || head.next==null){
            return head;
        }
        ListNode result = new ListNode(0);
        result.next=head;
        ListNode curr = result;
        while(curr.next !=null && curr.next.next!=null){
            ListNode next = head.next;
                    ListNode tmp = next.next;

                    curr.next=next;
                    next.next=head;
                    head.next=tmp;

                    curr=head;
                    head=head.next;
        }
        return result.next;
    }

递归法

java 复制代码
    public ListNode swapPairs(ListNode head) {
        if(head == null || head.next==null){
            return head;
        }
        ListNode next = head.next;
        head.next = swapPairs(head.next.next);
        next.next=head;
        return next;
    }
相关推荐
CoovallyAIHub3 分钟前
【一周AI风暴】周鸿祎放话“不用AI就裁员”,前谷歌CEO鼓吹对华996血拼!
深度学习·算法·计算机视觉
Miraitowa_cheems1 小时前
LeetCode算法日记 - Day 55: 子集、找出所有子集的异或总和再求和
数据结构·算法·leetcode·决策树·深度优先·剪枝
熬了夜的程序员1 小时前
【LeetCode】48. 旋转图像
算法·leetcode·链表·职场和发展·深度优先
Q741_1471 小时前
C++ 位运算 高频面试考点 力扣 268. 丢失的数字 题解 每日一题
c++·算法·leetcode·面试·位运算
未知陨落1 小时前
LeetCode:79.跳跃游戏Ⅱ
算法·leetcode
未知陨落1 小时前
LeetCode:74.数组中的第K个最大元素
算法·leetcode
电子_咸鱼1 小时前
LeetCode-hot100——验证二叉搜索树
开发语言·数据结构·c++·算法·leetcode·深度优先
Miraitowa_cheems1 小时前
LeetCode算法日记 - Day 56: 全排列II、话号码的字母组合
数据结构·算法·leetcode·决策树·链表·职场和发展·深度优先
Imxyk1 小时前
Codeforces Round 1052 (Div. 2) C. Wrong Binary Searchong Binary Search
c语言·c++·算法
Yunfeng Peng1 小时前
1- 十大排序算法(选择排序、冒泡排序、插入排序)
java·算法·排序算法