单链表
isevena、
向外行走,向内认知
展开
-
单链表反转
【题目描述】 反转单链表。例如链表为: 1->2->3->4 反转后为 4->3->2->1 【要求】 如果链表的长度为 N, 时间复杂度达到 O(N), 额外空间复杂度达到 O(1) 【难度】 士:★☆☆☆ 【解答】 方法1 这道题还是挺简单的,当我们在反转一个节点的时候,把一个节点的后驱改为指向它前驱就可以了。这里需要注意的点就是,当你...原创 2019-08-12 09:22:02 · 252 阅读 · 0 评论 -
链表分组反转
题目 这其实是一道变形的链表反转题,大致描述如下 给定一个单链表的头节点 head,实现一个调整单链表的函数,使得每K个节点之间为一组进行逆序,并且从链表的尾部开始组起,头部剩余节点数量不够一组的不需要逆序。(不能使用队列或者栈作为辅助) 例如: 链表:1->2->3->4->5->6->7->8->null, K = 3。那么 6->7...原创 2019-08-12 09:23:58 · 941 阅读 · 0 评论 -
go 实现并操作单链表
实现部分在linkedList包里面,具体实现的功能有: 1.判断是否为空的单链表 2.单链表的长度 3.获取头节点 4.从头部添加元素 5.从尾部添加元素 6.在指定位置添加元素 7.删除指定元素 8.删除指定位置的元素 9.判断是否包含某个元素 linkedList包代码如下: package linkedList type Object interface{} type Node ...原创 2019-08-12 09:26:07 · 110 阅读 · 0 评论