摘要: 题目: 三合一。描述如何只用一个数组来实现三个栈。 你应该实现push(stackNum, value)、pop(stackNum)、isEmpty(stackNum)、peek(stackNum)方法。stackNum表示栈下标,value表示压入的值。 构造函数会传入一个stackSize参数, 阅读全文
posted @ 2020-03-04 16:26 silentteller 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 题目: 给定一个有环链表,实现一个算法返回环路的开头节点。有环链表的定义:在链表中某个节点的next元素指向在它前面出现过的节点,则表明该链表存在环路。 示例 1: 输入:head = [3,2,0,-4], pos = 1输出:tail connects to node index 1解释:链表中 阅读全文
posted @ 2020-03-04 15:42 silentteller 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 题目: 给定两个(单向)链表,判定它们是否相交并返回交点。请注意相交的定义基于节点的引用,而不是基于节点的值。换句话说,如果一个链表的第k个节点与另一个链表的第j个节点是同一节点(引用完全相同),则这两个链表相交。 示例 1: 输入:intersectVal = 8, listA = [4,1,8, 阅读全文
posted @ 2020-03-04 15:30 silentteller 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 题目: 编写一个函数,检查输入的链表是否是回文的。 示例 1: 输入: 1->2输出: false 示例 2: 输入: 1->2->2->1输出: true 进阶:你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题? 分析: 利用快慢指针在找到链表中点的同时,将slow指针指的元素倒置, 阅读全文
posted @ 2020-03-04 15:21 silentteller 阅读(199) 评论(0) 推荐(0) 编辑