摘要: 26. 删除排序数组中的重复项 给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 示例 1: 给定数组 nums = [1,1,2], 函数应该返回 阅读全文
posted @ 2020-06-25 15:56 athony 阅读(693) 评论(0) 推荐(0) 编辑
摘要: 25. K 个一组翻转链表 给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。 k 是一个正整数,它的值小于或等于链表的长度。 如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。 示例: 给你这个链表:1->2->3->4->5 当 k = 2 时,应当返回: 2-> 阅读全文
posted @ 2020-06-25 15:46 athony 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 24. 两两交换链表中的节点 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 示例: 给定 1->2->3->4, 你应该返回 2->1->4->3. /** * Definition for singly-linked l 阅读全文
posted @ 2020-06-25 14:46 athony 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 23. 合并K个排序链表 合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。 示例: 输入: [ 1->4->5, 1->3->4, 2->6 ] 输出: 1->1->2->3->4->4->5->6 通过次数134,183提交次数257,914 /** * Definition 阅读全文
posted @ 2020-06-25 13:48 athony 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 原题解法: 22. 括号生成 数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。 示例: 输入:n = 3 输出:[ "((()))", "(()())", "(())()", "()(())", "()()()" ] class Solution { L 阅读全文
posted @ 2020-06-25 11:14 athony 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 19. 删除链表的倒数第N个节点 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3->5. 说明: 给定的 n 保证是有效的。 进阶: 你能尝试使用一趟扫描实 阅读全文
posted @ 2020-06-25 10:08 athony 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 18. 四数之和 给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满足条件且不重复的四元组。 注意: 答案中不可以包含重复的四元组。 示例: 给定数组 阅读全文
posted @ 2020-06-25 09:49 athony 阅读(89) 评论(0) 推荐(0) 编辑