Leetcode-Swap Nodes in Pairs

一、题目——Swap Nodes in Pairs

Given a linked list, swap every two adjacent nodes and return its head.

For example,

Given1->2->3->4, you should return the list as2->1->4->3.

Your algorithm should use only constant space. You may not modify the values in the list, only nodes itself can be changed.


二、分析

大家好,我又来了。这次还是链表题。根据题目的意思,就是每对节点两两交换。注意是交换节点,而不是交换节点的值。那么交换两个节点时,我们得让第一个节点的前一个节点的next指向第二个节点,第二个节点的下一个节点的next指向第一个节点。然后让第二个节点的next指向第一个节点。临界状态,即第一个节点是头结点。那我们就得相应做些特殊的处理,让第二个节点成为头结点。思路如上,上代码。


三、代码


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容