当前位置:网站首页>LeetCode Algorithm 1721. 交换链表中的节点
LeetCode Algorithm 1721. 交换链表中的节点
2022-08-10 09:55:00 【Alex_996】
题目链接:1721. 交换链表中的节点
Ideas
算法:双指针
数据结构:链表
思路:可以用快慢指针进行定位,先找到正数第k个节点,然后找倒数第k个节点,之后就是节点交换的操作了。
Code
C++
class Solution {
public:
ListNode* swapNodes(ListNode* head, int k) {
ListNode *head_k, *tail_k;
ListNode *quick = head, *slow = head;
k--;
// 找到正数第k个节点
while (k--) {
quick = quick->next;
}
head_k = quick;
// 找到倒数第k个节点
while (quick->next != nullptr) {
quick = quick->next;
slow = slow->next;
}
tail_k = slow;
swap(head_k->val, tail_k->val);
return head;
}
};
边栏推荐
猜你喜欢
第三章 搜索与图论(三)
Shell functions and arrays
web项目访问引用jar内部的静态资源
LCD DRM驱动框架分析一
线程池的基本概念、结构、类
[Metaverse Omi Says] Listen to how Rabbit Fan Rabbit creates a new era of trendy play from virtual to reality
Excel draws statistical graphs
Static关键字及应用,继承的概念
Defending risks with technology and escorting cloud native | Tongchuang Yongyi X Boyun held a joint product launch conference
Payment x Aggregation x Ledger Separation - The Way to Avoid Risk of "Erqing" on the Return Platform
随机推荐
10 【异步组件 组合式函数(hooks)】
效率开发目录
ESP8266-Arduino编程实例-MQ-7一氧化碳传感器驱动
shell iterates over folders and outputs
多租户技术
Oracle rac所在的网络要割接,停掉其中一个rac节点,这种方案可行吗?
LCD模块如何建立联系分析
【STL】位图的介绍使用以及代码的模拟实现
序列化技术ProtoBuf
shell遍历文件夹并输出
ELK框架搭建[通俗易懂]
VBA: 采用Combox控件实现二级下拉菜单功能
LiveGBS操作日志页面快速的筛选上级平台的调用记录直播观看录像回看等操作
【分布式】资源与事务:可观测性的基本二重性
在“企业通讯录”的盲区,融云的边界与分寸
[Internet of Things Architecture] The most suitable open source database for the Internet of Things
Static关键字及应用,继承的概念
如何理解BIO、NIO、AIO的区别
GO文件相关操作使用
中国驻越南使馆提醒在越北部、中部地区中国公民做好台风“木兰”安全防范