给定一个单向链表,编写函数交换相邻 两个元素 输入: 1 -> 2 -> 3 -> 4 -> 5 -> 6 -> 7 输出: 2 -> 1 -> 4 -> 3 -> 6 -> 5 -> 7 输入: 1 -> 2 -> 3 -> 4 -> 5 -> 6 输出: 2 -> 1 -> 4 -> 3 -> 6 -> 5 通过观察发现:当输入的与元素个数是单数的时候,最后...
1. 两对节点之间的连接 2. 如果只剩下一个节点,则不需要交换 代码如下: 1/**2* Definition for singly-linked list.3* public class ListNode {4* int val;5* ListNode next;6* ListNode(int x) { val = x; }7* }8*/9publicclassSolution {10publicListNode swapPairs(ListNode head) {11if(head...
给定一个单向链表,编写函数交换相邻 两个元素 输入: 1 -> 2 -> 3 -> 4 -> 5 -> 6 -> 7 输出: 2 -> 1 -> 4 -> 3 -> 6 -> 5 -> 7 输入: 1 -> 2 -> 3 -> 4 -> 5 -> 6 输出: 2 -> 1 -> 4 -> 3 -> 6 -> 5 通过观察发现:当输入的与元素个数是单数的时候,最后...
输出: 2 -> 1 -> 4 -> 3 -> 6 -> 5 通过观察发现:当输入的与元素个数是单数的时候,最后一位不参与交换。 当链表节点中的数据字段不多的时候我们可以交换数据域的指针来实现相邻两个节点的交换。 当数据域太多时操作成本将非常昂贵,该情形下,更改链域(指针域)将是一个更好的解决方法。 以下是代码的...
通过观察发现:当输入的与元素个数是单数的时候,最后一位不参与交换。 当链表节点中的数据字段不多的时候我们可以交换数据域的指针来实现相邻两个节点的交换。 当数据域太多时操作成本将非常昂贵,该情形下,更改链域(指针域)将是一个更好的解决方法。