![](https://img-blog.csdnimg.cn/20190918140012416.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
刷题
平时遇到的一些有意思的题目
lie to me
这个作者很懒,什么都没留下…
展开
-
力扣 1996 游戏中弱角色的数量
学习到 哔哩哔哩黄歪歪的一种写法首先学习到的就是 std::sort() 如果直接给二维数组排序 则默认按照第一个来进行操作。class Solution {public: int numberOfWeakCharacters(vector<vector<int>>& nums) { sort(nums.begin(),nums.end()); reverse(nums.begin(),nums.end()); .原创 2021-09-07 11:04:29 · 185 阅读 · 0 评论 -
452. 用最少数量的箭引爆气球
看到这个题的时候 就想到树状数组,首先 认为没有一个点有相交 这样结果就是 points 的size然后 统计区间中最大的值 每次减去这个值 最后就可以得到结果使用这个思路 最开始的的想法是没有问题的 第二步出错了,统计区间最大值的方式是错误的代码如下:#include <bits/stdc++.h>using namespace std;int maxn = 1e4 +5;class Solution {public: int findMinA...原创 2021-03-29 10:22:39 · 88 阅读 · 0 评论 -
94. 二叉树的中序遍历
原题连接首先知道什么是中序遍历中序遍历就是中间访问根节点即:访问左节点()访问根节点()访问右节点()对于非叶子节点(没有左右孩子节点的节点)每个点都可以说是一个根节点所以这里的访问根节点就可以理解是输出当前节点的值实现的方法有两种,维护一个栈1.添加根节点2.如果左边节点存在,添加左边的节点,不存在输出当前节点的值,然后添加右边的3.如果右侧节点不存在则输出栈顶值(上一个的左边)存在则执行第二步这样就可以解决这个问题下面是实现代码class原创 2020-09-14 17:22:04 · 195 阅读 · 0 评论 -
40. 组合总和 II
https://leetcode-cn.com/problems/combination-sum-ii/这一题就是很普通的递归回溯问题在于如何去重实际上只要每一层只能选择一次那么就不会有重复的(使用了这个数进行过往下一层递归以后都不能用这个数再去和下一层递归了)也就是排序然后判断一下就行class Solution {public: vector<vector<int>>ans; vector<int >temp; s...原创 2020-09-10 09:10:09 · 97 阅读 · 0 评论 -
347. 前 K 个高频元素
看到这个题首线就想到 将所有的数放在map里面问题在于怎么拿出来,想了很久都没想到,最后看了别人的,才知道用优先队列的方式复习一下优先队列的定义方式 :priority_queue<Type, Container, Functional>Type 就是数据类型,Container 就是容器类型(Container必须是用数组实现的容器,比如vector,deque等等,但不能用 list。STL里面默认用的是vector),Functional 就是比较的方式,当需要用自定义的数..原创 2020-09-07 09:56:01 · 109 阅读 · 0 评论 -
491. 递增子序列
题目链接https://leetcode-cn.com/problems/increasing-subsequences/又是没做出每日一题的一天这题总体来说是枚举所有子串,问题点在去重上贴出一个别人的代码class Solution {public: vector<int>t; void dfs(vector<vector<int>>&a,vector<int>&nums,int i) {..原创 2020-08-25 18:06:20 · 132 阅读 · 0 评论 -
133. 克隆图
题目链接:https://leetcode-cn.com/problems/clone-graph/这题主要就是考察对领接表的理解难度其实不大,这里主要是学习到了两个STL一个是unordered_map相对于map 这个主要是内部是哈希表实现查找速度快于map。emplace_back 相对于push_back只会直接构造一次对象不会创建临时对象class Solution {public: Node* cloneGraph(Node* node).原创 2020-08-12 18:40:20 · 164 阅读 · 0 评论 -
415. 字符串相加
题目链接:https://leetcode-cn.com/problems/add-strings/这题非常的简单,只需要考虑三个问题长度一样的加分 长度不一样的加分 进位我是这样完成的,写的比较长这里主要是提供看简洁的写法第二份代码,写的非常优美。#include <bits/stdc++.h>using namespace std;class Solution {public: string addStrings(string num1, strin原创 2020-08-03 09:41:36 · 102 阅读 · 0 评论 -
343. 整数拆分
题目链接https://leetcode-cn.com/problems/integer-break/首先根据题目很容易的到的一个点是 要使乘积最大能选择的 数字只能是1 2 3 ,之后选择的任何一个数都可以拆分成这三个的乘积所以只要选这三个就可以。 然后如何...原创 2020-07-30 10:04:02 · 140 阅读 · 0 评论