LeetCode第二十四题-交换链表中节点值
作者:互联网
Swap Nodes in Pairs
问题简介:给定链表,交换每两个相邻节点并返回链表.
举例:
输入:1->2->3->4
输出:2->1->4->3
链表结构:
* Definition for singly-linked list.
public class ListNode {
int val;
ListNode next;
ListNode(int x) { val = x; }
}
解法一:
定义一个头节点的引用,然后遍历链表,当下一个节点存在时,每两个节点的数值交换
class Solution {
public ListNode swapPairs(ListNode head) {
ListNode result = head;
int val = 0;
while(head!=null){
if(head.next!=null){
val = head.val;
head.val = head.next.val;
head.next.val = val;
head = head.next.next;
}else break;
}
return result;
}
}
复杂度分析:
时间复杂度:o(n)遍历一遍链表长度
空间复杂度:o(1)占用的空间为定值
小白刷题之路,请多指教— — 要么大器晚成,要么石沉大海
标签:head,ListNode,val,next,链表,第二十四,节点,LeetCode 来源: https://blog.csdn.net/weixin_44147866/article/details/89644000