力扣热题100 k个一组反转链表题解

题目:

代码:

Go 复制代码
func reverseKGroup(head *ListNode, k int) *ListNode {
	cur := head
	for i := 0; i < k; i++ {
		if cur == nil {
			return head
		}
		cur = cur.Next
	}
	newHead := reverse(head, cur)
	head.Next = reverseKGroup(cur, k)
	return newHead
}

func reverse(start, end *ListNode) *ListNode { //翻转
	var pre *ListNode
	cur := start
	for cur != end {
		nex := cur.Next
		cur.Next = pre
		pre = cur
		cur = nex
	}
	return pre
}
相关推荐
你撅嘴真丑15 小时前
第九章-数字三角形
算法
uesowys15 小时前
Apache Spark算法开发指导-One-vs-Rest classifier
人工智能·算法·spark
ValhallaCoder15 小时前
hot100-二叉树I
数据结构·python·算法·二叉树
董董灿是个攻城狮15 小时前
AI 视觉连载1:像素
算法
智驱力人工智能16 小时前
小区高空抛物AI实时预警方案 筑牢社区头顶安全的实践 高空抛物检测 高空抛物监控安装教程 高空抛物误报率优化方案 高空抛物监控案例分享
人工智能·深度学习·opencv·算法·安全·yolo·边缘计算
孞㐑¥17 小时前
算法——BFS
开发语言·c++·经验分享·笔记·算法
月挽清风17 小时前
代码随想录第十五天
数据结构·算法·leetcode
XX風17 小时前
8.1 PFH&&FPFH
图像处理·算法
NEXT0617 小时前
前端算法:从 O(n²) 到 O(n),列表转树的极致优化
前端·数据结构·算法
代码游侠18 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法