摘要: Medium! 题目描述: (请仔细读题) 实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。 如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。 必须原地修改,只允许使用额外常数空间。 以下是一些例子,输入位于左侧列,其相应输出位于右侧列。1 阅读全文
posted @ 2018-06-04 16:59 Ariel_一只猫的旅行 阅读(223) 评论(0) 推荐(0) 编辑
摘要: Hard! 题目描述: 给定一个字符串 s 和一些长度相同的单词 words。在 s 中找出可以恰好串联 words 中所有单词的子串的起始位置。 注意子串要与 words 中的单词完全匹配,中间不能有其他字符,但不需要考虑 words 中单词串联的顺序。 示例 1: 示例 2: 解题思路: 这道题 阅读全文
posted @ 2018-06-04 16:51 Ariel_一只猫的旅行 阅读(2534) 评论(0) 推荐(0) 编辑
摘要: Medium! 题目描述: 给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。 返回被除数 dividend 除以除数 divisor 得到的商。 示例 1: 示例 2: 说明: 被除数和除数均为 32 位有符号整数。 除数不为 0。 阅读全文
posted @ 2018-06-04 16:42 Ariel_一只猫的旅行 阅读(348) 评论(0) 推荐(0) 编辑
摘要: Easy! 题目描述: 实现 strStr() 函数。 给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。 示例 1: 示例 2: 说明: 当 needle 是空字符串时, 阅读全文
posted @ 2018-06-04 16:34 Ariel_一只猫的旅行 阅读(198) 评论(0) 推荐(0) 编辑
摘要: Easy! 题目描述: 给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 示例 1: 阅读全文
posted @ 2018-06-04 16:29 Ariel_一只猫的旅行 阅读(210) 评论(0) 推荐(0) 编辑
摘要: Easy! 题目描述: 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 示例 1: 示例 2: 说明: 为什么返回数值是整数,但输出的答案是数组呢? 请注意 阅读全文
posted @ 2018-06-04 16:25 Ariel_一只猫的旅行 阅读(216) 评论(0) 推荐(0) 编辑
摘要: hard! 题目描述: 给出一个链表,每 k 个节点为一组进行翻转,并返回翻转后的链表。 k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么将最后剩余节点保持原有顺序。 示例 : 给定这个链表:1->2->3->4->5 当 k = 2 时,应当返回: 2->1->4 阅读全文
posted @ 2018-06-04 16:19 Ariel_一只猫的旅行 阅读(4775) 评论(0) 推荐(0) 编辑
摘要: Medium! 题目描述: 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。 示例: 说明: 你的算法只能使用常数的额外空间。 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 解题思路: 这道题不算难,是基本的链表操作题,我们可以分别用递归和迭代来实现。对于迭代实现,还是需 阅读全文
posted @ 2018-06-04 16:00 Ariel_一只猫的旅行 阅读(1504) 评论(0) 推荐(0) 编辑
摘要: Hard! 题目描述: 合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。 示例: 解题思路: 这道题让我们合并k个有序链表,之前我们做过一道Merge Two Sorted Lists 混合插入有序链表,是混合插入两个有序链表。这道题增加了难度,变成合并k个有序链表了,但是不管 阅读全文
posted @ 2018-06-04 15:50 Ariel_一只猫的旅行 阅读(3169) 评论(0) 推荐(0) 编辑
摘要: Medium! 题目描述: 给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。 例如,给出 n = 3,生成结果为: 解题思路: 这道题给定一个数字n,让生成共有n个括号的所有正确的形式,对于这种列出所有结果的题首先还是考虑用递归Recursion来解。 由于 阅读全文
posted @ 2018-06-04 15:35 Ariel_一只猫的旅行 阅读(4756) 评论(0) 推荐(0) 编辑
摘要: Easy! 题目描述: 将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例: 解题思路: 具体思想就是新建一个链表,然后比较两个链表中的元素值,把较小的那个链到新链表中,由于两个输入链表的长度可能不同,所以最终会有一个链表先完成插入所有元素,则直接将另 阅读全文
posted @ 2018-06-04 15:24 Ariel_一只猫的旅行 阅读(2698) 评论(1) 推荐(0) 编辑