Leetcode 24.Swap Nodes in Pairs
【摘要】
题目链接 Leetcode 24. Swap Nodes in Pairs
给你一个链表,交换相邻两个节点,例如给你 1->2->3->4,输出2->1->4...
给你一个链表,交换相邻两个节点,例如给你 1->2->3->4,输出2->1->4->3。
我代码里在head之前新增了一个节点newhead,其实是为了少写一些判断head的代码。
public class Solution {
public ListNode swapPairs(ListNode head) {
ListNode p = head;
ListNode pre = new ListNode(0);
pre.next = head;
ListNode newhead = pre;
while (null != p && null != p.next) { //两两节点做交换
//其实交换两个节点涉及三个节点的变更
ListNode q = p.next;
pre.next = p.next;
p.next = q.next;
q.next = p;
pre = p;
p = p.next;
}
return newhead.next;
}
}
文章来源: xindoo.blog.csdn.net,作者:xindoo,版权归原作者所有,如需转载,请联系作者。
原文链接:xindoo.blog.csdn.net/article/details/76472983
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)