随笔分类 -  LeetCode刷题合集

摘要:/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * ListNode(int x) : 阅读全文
posted @ 2021-11-29 16:49 柚子z 阅读(24) 评论(0) 推荐(0) 编辑
摘要:39. 组合总和 https://leetcode-cn.com/problems/combination-sum/ 拿到题比较贪心,希望用比较简洁的方法想出来,不要太高的复杂度。隐隐约约记得好像这种题应该是用回溯搜索来写,但是刚刚拿题的时候居然没想出来。。。晚上洗完衣服,灵光乍现,一气呵成。 cl 阅读全文
posted @ 2021-11-01 22:30 柚子z 阅读(28) 评论(0) 推荐(0) 编辑
摘要:数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。 有效括号组合需满足:左括号必须以正确的顺序闭合。 示例 1: 输入:n = 3输出:["((()))","(()())","(())()","()(())","()()()"]示例 2: 输入:n = 1 阅读全文
posted @ 2021-10-26 15:04 柚子z 阅读(46) 评论(0) 推荐(0) 编辑
摘要:给你一个整数数组 nums 和一个整数 k。 如果某个 连续 子数组中恰好有 k 个奇数数字,我们就认为这个子数组是「优美子数组」。 请返回这个数组中「优美子数组」的数目。 示例 1: 输入:nums = [1,1,2,1,1], k = 3输出:2解释:包含 3 个奇数的子数组是 [1,1,2,1 阅读全文
posted @ 2021-10-24 20:10 柚子z 阅读(48) 评论(0) 推荐(0) 编辑
摘要:剑指 Offer 57. 和为s的两个数字 1.暴力循环 运行时间超限。复杂度是O(n^2). 点击查看代码 class Solution { public: vector<int> twoSum(vector<int>& nums, int target) { vector<int> ans(2) 阅读全文
posted @ 2021-09-30 17:11 柚子z 阅读(27) 评论(0) 推荐(0) 编辑
摘要:剑指 Offer 52. 两个链表的第一个公共节点 一道easy难度的题目,但是很好的考察了双指针的思想以及链表的知识,值得反复练习。 1.笨方法(暴力!) 时间复杂度 O(n2) class Solution { public: ListNode *getIntersectionNode(List 阅读全文
posted @ 2021-09-30 16:55 柚子z 阅读(26) 评论(0) 推荐(0) 编辑
摘要:1567. 乘积为正数的最长子数组长度 - 力扣(LeetCode) (leetcode-cn.com) 代码 思路:dp,创建两个数组,posti和negav,分别存储以下标i为结尾的最长正数子数组和最长负数子数组。 遍历nums数组,当nums[i]大于0时,以nums[i]为结尾的最长正数子数 阅读全文
posted @ 2021-08-05 14:24 柚子z 阅读(176) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示