328 奇偶链表 给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。 请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1),时间复杂度应为 O(nodes),nodes 为节点总数。 示例 1: 12输入: 1->2->3->4->5->NULL输出: 1->3->5->2-& 2021-01-21 algo leetcode 算法
86 分隔链表 给你一个链表和一个特定值 x ,请你对链表进行分隔,使得所有小于 x 的节点都出现在大于或等于 x 的节点之前。 你应当保留两个分区中每个节点的初始相对位置。 示例: 12输入:head = 1->4->3->2->5->2, x = 3输出:1->2->2->4->3->5 Solution 建立两个链表,分别存储大于等于 x 的 2021-01-21 algo leetcode 算法
206 反转链表 反转一个单链表。 示例: 12输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL 进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题? Solution 迭代法 123456789101112131415161718192021222324252627// @lc code=star 2021-01-21 algo leetcode 链表
220 存在重复元素 III 在整数数组 nums 中,是否存在两个下标 i\ 和 j\,使得 nums [i] 和 nums [j] 的差的绝对值小于等于 t ,且满足 i\ 和 j\ 的差的绝对值也小于等于 ķ 。 如果存在则返回 true,不存在返回 false。 示例 1: 12输入: nums = [1,2,3,1], k = 3, t = 0输出: true 示例 2: 12输入: nums = [1,0,1,1] 2021-01-20 algo leetcode 算法
217 存在重复元素 给定一个整数数组,判断是否存在重复元素。 如果存在一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。 示例 1: 12输入: [1,2,3,1]输出: true 示例 2: 12输入: [1,2,3,4]输出: false 示例 3: 12输入: [1,1,1,3,3,4,3,2,4,2]输出: true Solution 12345678910 2021-01-20 algo leetcode 算法
219 存在重复元素 II 给定一个整数数组和一个整数 k,判断数组中是否存在两个不同的索引 i 和 j,使得 nums [i] = nums [j]**,并且 i 和 j 的差的 **绝对值 至多为 k。 示例 1: 12输入: nums = [1,2,3,1], k = 3输出: true 示例 2: 12输入: nums = [1,0,1,1], k = 1输出: true 示例 3: 12输入: nums = [1, 2021-01-20 algo leetcode 算法
149 直线上最多的点数 给定一个二维平面,平面上有 n 个点,求最多有多少个点在同一条直线上。 示例 1: 12345678910输入: [[1,1],[2,2],[3,3]]输出: 3解释:^|| o| o| o +------------->0 1 2 3 4 示例 2: 1234567891011输入: [[1,1],[3,2],[5,3],[4,1],[2,3],[1,4] 2021-01-20 algo leetcode 算法
447 回旋镖的数量 给定平面上 n 对 互不相同 的点 points ,其中 points[i] = [xi, yi] 。回旋镖 是由点 (i, j, k) 表示的元组 ,其中 i 和 j 之间的距离和 i 和 k 之间的距离相等(需要考虑元组的顺序)。 返回平面上所有回旋镖的数量。 示例 1: 123输入:points = [[0,0],[1,0],[2,0]]输出:2解释:两个回旋镖为 [[1,0],[0,0], 2021-01-20 algo leetcode 算法
49 字母异位词分组 给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。 示例: 1234567输入: ["eat", "tea", "tan", "ate", "nat", "bat"]输出:[ ["ate","eat", 2021-01-20 algo leetcode 哈希表
454 四数相加 II 给定四个包含整数的数组列表 A , B , C , D ,计算有多少个元组 (i, j, k, l) ,使得 A[i] + B[j] + C[k] + D[l] = 0。 为了使问题简单化,所有的 A, B, C, D 具有相同的长度 N,且 0 ≤ N ≤ 500 。所有整数的范围在 -228 到 228 - 1 之间,最终结果不会超过 231 - 1 。 例如: 123456789101112 2021-01-20 algo leetcode 算法