摘要: 题目描述 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。 示例 1: 示例 2: 分析 之前做过一个题,是旋转数组,把数组按要求向右循环移位。在旋转数组中,用到了按索引反转数组的一个辅助方法,先把数组整体反转,再分为两部分分别反转,就可以得到结果了。这个方法在链表中 阅读全文
posted @ 2018-09-12 10:54 yuzhenzero 阅读(148) 评论(0) 推荐(0)
摘要: 题目描述 您将获得一个双向链表,除了下一个和前一个指针之外,它还有一个子指针,可能指向单独的双向链表。这些子列表可能有一个或多个自己的子项,依此类推,生成多级数据结构,如下面的示例所示。 扁平化列表,使所有结点出现在单级双链表中。您将获得列表第一级的头部。 示例: 以上示例的说明: 给出以下多级双向 阅读全文
posted @ 2018-09-11 21:54 yuzhenzero 阅读(193) 评论(0) 推荐(0)
摘要: 题目描述 2 两数相加 给定两个 非空 链表来表示两个非负整数。位数按照 逆序 方式存储,它们的每个节点只存储单个数字。将两数相加返回一个新的链表。 你可以假设除了数字 0 之外,这两个数字都不会以零开头。 示例: 分析 由于是两个链表的元素对应相加,很自然地就想到用双指针,然后在双指针的基础上加一 阅读全文
posted @ 2018-09-11 11:12 yuzhenzero 阅读(288) 评论(0) 推荐(0)
摘要: 题目描述 给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。 请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1),时间复杂度应为 O(nodes),nodes 为节点总数。 示例 1: 示例 2: 说明: 阅读全文
posted @ 2018-09-07 20:05 yuzhenzero 阅读(506) 评论(0) 推荐(0)
摘要: 题目描述 206 反转链表 反转一个单链表。 示例: 进阶: 你可以迭代或递归地反转链表。你能否用两种方法解决这道题? 这是一个经典题目,《算法》第四版有它的原题,在中文版第103页1.3.30。 分析 这一题有两种方法来做:递归法和迭代法。 递归法 思路 假设整个链表有N个节点,要将整个链表反转, 阅读全文
posted @ 2018-09-07 15:51 yuzhenzero 阅读(203) 评论(0) 推荐(0)
摘要: 题目描述 19 删除链表的倒数第N个节点 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 说明: 给定的 n 保证是有效的。 进阶: 你能尝试使用一趟扫描实现吗? 分析 这一题可以用两种方法来做 两次遍历算法 一次遍历算法(待补充) 两次遍历算法 思路 我们首先需要知道链 阅读全文
posted @ 2018-09-06 21:56 yuzhenzero 阅读(129) 评论(0) 推荐(0)
摘要: 题目描述 142 环形链表 给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 。 说明: 不允许修改给定的链表。 进阶: 你是否可以不用额外空间解决此题? 分析 使用双指针可以解决该问题。 链表没有环的判定可以参考第141题, "环形链表" 。 现在在链表有环的情况下分析。设一个快 阅读全文
posted @ 2018-09-06 11:01 yuzhenzero 阅读(412) 评论(0) 推荐(0)
摘要: 题目描述 给定一个含有 n 个正整数的数组和一个正整数 s , 找出该数组中满足其和 ≥ s 的长度最小的连续子数组 。 如果不存在符合条件的连续子数组,返回 0。 示例: 进阶: 如果你已经完成了 O ( n ) 时间复杂度的解法, 请尝试 O ( n log n ) 时间复杂度的解法。 分析 这 阅读全文
posted @ 2018-08-30 19:55 yuzhenzero 阅读(641) 评论(0) 推荐(0)
摘要: 题目描述 给定一个包含 m x n 个元素的矩阵( m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。 示例 1: 示例 2: 分析 这一题跟昨天的对角线遍历有点相似,可以采用从外到内,一层一层地遍历每一个元素。 如图所示,矩阵中的数字代表层数,最外层是第一层,依次往内。每一层按上右下 阅读全文
posted @ 2018-08-30 09:15 yuzhenzero 阅读(256) 评论(0) 推荐(0)
摘要: 题目描述 给定一个含有 M x N 个元素的矩阵(M行,N列),请以对角线遍历的顺序返回这个矩阵中的所有元素,对角线遍历如下图所示。 示例: 说明: 1. 给定矩阵中的元素总数不会超过 100000 。 分析 分析一下遍历顺序的特点,可以看出,对角线的方向跟索引和(行的索引值+列的索引值)的奇偶性有 阅读全文
posted @ 2018-08-28 21:24 yuzhenzero 阅读(2131) 评论(2) 推荐(1)