leetcode
twentyfour4ever
这个作者很懒,什么都没留下…
展开
-
通过异或交换变量
异或性质: a^a = 0 a^a^b = b 交换变量: a = a^b b = a^b a = a^b原创 2022-02-03 14:43:19 · 244 阅读 · 0 评论 -
leetcode 78 求子集
题目 给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。 说明:解集不能包含重复的子集。 示例: 输入: nums = [1,2,3] 输出: [ [3], [1], [2], [1,2,3], [1,3], [2,3], [1,2], [] ] 迭代 class Solution: def subsets(self, nums): result = [[]] for num in nums:原创 2020-07-16 12:40:38 · 92 阅读 · 0 评论 -
leetcode 234 除自身以外数组的乘积
题目描述: 给你一个长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。 说明: 请不要使用除法,且在 O(n) 时间复杂度内完成此题。 思路: 建立两个数组 分别存储左,右两边除当前数字的累积乘。 代码(java): public int[] solution(int[] nums) { int[] result = new int[nums.length]; int[原创 2020-06-04 09:20:45 · 82 阅读 · 0 评论 -
Leetcode 面试题08.09 括号
题目: 括号。设计一种算法,打印n对括号的所有合法的(例如,开闭一一对应)组合。 说明:解集不能包含重复的子集。 例如,给出 n = 3,生成结果为: [ "((()))", "(()())", "(())()", "()(())", "()()()" ] 思路:使用dfs深度优先算法 递归遍历 由于括号是由左括号开始 当右括号大于左括号时 结束此次遍历 当left == right的时候 保留当前结果 代码如下(java): publi原创 2020-06-01 10:49:22 · 208 阅读 · 0 评论