摘要:
实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。 如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。 必须原地修改,只允许使用额外常数空间。 以下是一些例子,输入位于左侧列,其相应输出位于右侧列。 1,2,3 → 1,3,2 3,2,1 → 阅读全文
posted @ 2020-07-22 10:49
陈糊糊啊
阅读(123)
评论(0)
推荐(0)
摘要:
给定一个可包含重复数字的序列,返回所有不重复的全排列。示例:输入: [1,1,2]输出:[ [1,1,2], [1,2,1], [2,1,1]]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/permutations-ii著作权归领扣网络所有。商 阅读全文
posted @ 2020-07-19 21:16
陈糊糊啊
阅读(68)
评论(0)
推荐(0)
摘要:
给定一个 没有重复 数字的序列,返回其所有可能的全排列。示例:输入: [1,2,3]输出:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]] 法一: 思路: result = []def backtrack(路径, 选择列表): if 满足 阅读全文
posted @ 2020-07-14 19:36
陈糊糊啊
阅读(138)
评论(0)
推荐(0)
摘要:
给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 示例 1:给定 nums = [3,2,2 阅读全文
posted @ 2020-07-12 20:22
陈糊糊啊
阅读(103)
评论(0)
推荐(0)
摘要:
给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 示例 1:给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 阅读全文
posted @ 2020-07-11 21:23
陈糊糊啊
阅读(113)
评论(0)
推荐(0)
摘要:
数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。示例:输入:n = 3输出:[ "((()))", "(()())", "(())()", "()(())", "()()()" ] 法一: 1 public List<String> generatePa 阅读全文
posted @ 2020-07-04 19:15
陈糊糊啊
阅读(130)
评论(0)
推荐(0)
摘要:
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例: 输入:1->2->4, 1->3->4 输出:1->1->2->3->4->4 法一: 1 public ListNode mergeTwoLists(ListNode l1, ListNode 阅读全文
posted @ 2020-07-03 19:28
陈糊糊啊
阅读(95)
评论(0)
推荐(0)
摘要:
给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: "()"输出: true示例 2:输入: "()[]{}"输出: tr 阅读全文
posted @ 2020-07-03 19:09
陈糊糊啊
阅读(144)
评论(0)
推荐(0)
摘要:
给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。来源:力扣(LeetCode)链接:https://leetcode-cn. 阅读全文
posted @ 2020-07-02 20:46
陈糊糊啊
阅读(150)
评论(0)
推荐(0)
浙公网安备 33010602011771号