![](https://img-blog.csdnimg.cn/e61a1cbdb3754c02af9a848d0224a0a5.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
力扣刷题
刷遍力扣题,助力2023秋招
踏过山河,踏过海
爱情来了,就好好珍惜;爱情走了,就好好生活…
展开
-
多重背包问题的解决方法______闫氏 DP 分析法
多重背包问题的解决方法______闫氏 DP 分析法原创 2023-03-25 21:41:02 · 56 阅读 · 0 评论 -
二分查找 c++模板
二分查找 c++模板原创 2022-11-20 12:21:28 · 475 阅读 · 3 评论 -
01背包问题的解决方法______闫氏 DP 分析法
01背包问题的解决方法______闫氏 DP 分析法原创 2022-11-19 00:45:40 · 121 阅读 · 0 评论 -
完全背包问题的解决方法______闫氏 DP 分析法
完全背包问题的解决方法______闫氏 DP分析法原创 2022-11-19 00:20:04 · 382 阅读 · 1 评论 -
N皇后问题
N皇后问题原创 2022-06-25 09:07:35 · 86 阅读 · 0 评论 -
力扣1082,1084题解_sql查询类型的题目
1084.销售分析III1082销售分析I原创 2022-06-08 21:51:51 · 143 阅读 · 1 评论 -
力扣429. N 叉树的层序遍历
解题思路[1,null,3,2,4,null,5,6]1入队;1出队;3入队,2入队,4入队;3出队;5入队,6入队;2出队,4出队;5出队,6出队;当你遍历到一个节点时,就先临时保存一下当前节点,然后当前节点出队,然后再查看一下,当前节点有没有孩子节点,有的话,就将当前节点的孩子节点全部入队;然后,在遍历这一层的一下个节点,…,这个一层节点遍历完,再进行下一层的节点…代码/*// Definition for a Node.class Node {public:原创 2022-04-08 20:17:32 · 308 阅读 · 0 评论 -
【算法与数据结构】——并查集
并查集【算法与数据结构】——并查集【算法与数据结构】—— 并查集两位大佬写的太好了,现在加入了一些自己的理解,进行简化。侵删。void init(int n) //并查集的初始化{ for(int i = 0; i < n; i++){ pre[i] = i; //每个结点的上级都是自己 } }int find(int x) //查找x的代表元{ //找这个树的根节点(即"教主"),根节点(即"教主")的特点.原创 2022-04-07 22:51:01 · 975 阅读 · 3 评论 -
力扣每日一题(2022_4_05)762. 二进制表示中质数个计算置位
解题思路判断一个数x的二进制形式中,1的个数的模板:初始化x为你要判断的数,初始化count为0(用来计数)while(x!=0){ x=x&(x-1); count++;}本题模板:初始化答案ans为0for(int i=初始位置;i<=结束位置;i++){ 定义一个变量,来取到当前遍历到的数,int tmp =i; 初始化一个计数器,用来存放,当前遍历到的数中,有几个1,int count = 0; while(tmp!=0){原创 2022-04-05 13:47:29 · 277 阅读 · 0 评论 -
蓝桥杯求100阶乘的正约数
#include<iostream>#include<string>#include<stack>#include<vector>#include<map>#include<algorithm>#include<set>using namespace std;/** 4!=4*3*2*1* =>4!又=(2^3)*(3^1)* =>那么4!共有(3+1)*(1+1)个正约数* * .原创 2022-04-05 00:08:13 · 1623 阅读 · 4 评论 -
力扣415. 字符串相加_填补我不会使用数字字符串进行相加的问题
填补我不会使用"数字字符串"进行相加的问题原创 2022-04-04 23:06:20 · 396 阅读 · 0 评论 -
位运算小总结_力扣136. 只出现一次的数字(一共五道题,带你入门位运算)
136. 只出现一次的数字解题思路位运算知识点:1.关于异或:满足交换律 且 满足任何一个数和自己异或结果一定为0且 任何一个数^0==它本身2.取模int a;a%(2^n) 等价于 a&((2^n)-1)3.判断奇偶数a&1==0 是偶数a&1==1 是奇数4.两数交换a=a^b;b=ab;//b=(ab)b=a(b^b)=a;a=ab;//a=(ab)a=(aa)^b=b;下面这个题也颇有启发6033. 转换数字的原创 2022-04-04 20:22:37 · 504 阅读 · 0 评论 -
力扣_394. 字符串解码
394. 字符串解码解题思路很棒的一道题完美的解决了我长期对c++字符串的相关问题的疑惑代码/*第一眼看到这个题,我先想到的是c++中的字符串拼接应该如何实现?是否和java一样简单?以下是一个简单的示例#include<iostream>#include<string>using namespace std;int main() { string s = "abcdef"; string q = ""; for (int i = 0; i <原创 2022-04-02 15:57:50 · 130 阅读 · 0 评论 -
力扣160. 相交链表_双指针
160. 相交链表教程方一:/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ //相交问题=>就用双指针class Solution {public: ListNode *getIntersectionNode(L原创 2022-03-31 23:18:52 · 699 阅读 · 0 评论 -
力扣_547. 省份数量
547. 省份数量方法一:深度优先输入:isConnected = [[1,1,0],[1,1,0],[0,0,1]]输出:2=>isConnected中包含几个元素就代表有几个城市=>明显有三个[1,1,0]=>第一个和第一个城市相连,第一个城市与第二个城市相连,第一个城市与第三个城市不相连[1,1,0]=>第二个和第一个城市相连,第二个城市与第二个城市相连,第二个城市与第三个城市不相连[0,0,1]=>第三个与第一个城市不相连,第三个城市与第二个城市不原创 2022-03-31 22:45:45 · 410 阅读 · 0 评论 -
蓝桥杯_波兰表达式(前缀表达式)_A组
蓝桥杯_波兰表达式(前缀表达式)_A组与力扣150.逆波兰表达式遍历方向相反#include<iostream>#include<vector>#include<stack>using namespace std;//使用栈//逆波兰表达式是每当遍历到一个运算符,就拿出刚刚遍历到的两个数//从前往后进行运算//真实难度:简单,只用到了栈stack<int>s;bool isOperator( char token) { switc.原创 2022-03-30 23:29:37 · 358 阅读 · 2 评论 -
力扣_150. 逆波兰表达式求值
解题思路逆波兰表达式=>指的是后缀表达式波兰表达式 =>值的是前缀表达式代码class Solution {public:stack<int>s;//使用栈//逆波兰表达式是每当遍历到一个运算符,就拿出刚刚遍历到的两个数//从前往后进行运算//真实难度:简单,只用到了栈bool isOperator(string token) {//判断是否是运算符还是数字 return token == "+" || token == "-" || token ==原创 2022-03-30 22:43:30 · 547 阅读 · 0 评论 -
641. 设计循环双端队列 难度:中等_力扣刷题
https://leetcode-cn.com/problems/design-circular-deque/641. 设计循环双端队列 难度:中等//循环队列(622题)=>相比普通的队列,循环队列可以放满//双向循环队列=>与循环队列相比,就是:双向循环队列的头部既可以出队,又可以入队, 并且 ,尾部可以作出队和入队的操作.双端队列的英文名:deque=>double_ended_queue class MyCircularDeque {public: /原创 2022-03-25 21:20:36 · 464 阅读 · 0 评论 -
某厂面试题_爬楼梯升级版
举个例子一阶楼梯:只能0到1二阶楼梯:0—>1—>20—>2三阶楼梯:0—>1—>2—>30—>2—>3四阶楼梯:0—>1—>2—>3—>40—>1—>2—>40—>2—>3—>40—>2—>4观察规律:0级楼梯:0种走法1级楼梯:1种走法2级楼梯:2种走法3级楼梯:2种走法4级楼梯:4种走法所以,n为奇,f(n)=f(n-1)n为偶,f(n)=.原创 2022-02-24 11:18:24 · 1790 阅读 · 0 评论 -
3. 无重复字符的最长子串-力扣刷题
3. 无重复字符的最长子串int lengthOfLongestSubstring(char* s) { /* * 必须要理解的一点:该算法是 => 从s[i]中取出当前遍历到的字符 ,然后index[当前字符的ascall码值]是纪录当前字符出现的位置 * start记录的是 "当前" "这个" "不重复的子串" 的 "第一个字符" 的 "索引" * 如何判断相同的字母再次出现? =>本题巧妙的,利用了位置永远大于索引的定律(即原创 2022-02-08 19:20:56 · 616 阅读 · 0 评论 -
LeetCode刷题_96.分隔链表_用C++实现
LeetCode刷题_96.分隔链表_用C++实现解题思路额外申请两个链表,一个放大数,一个放小数,然后小数链表链上大数链表即可(有点像归并排序)代码/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * ListNode(int x) : val(原创 2022-01-26 00:27:03 · 107 阅读 · 0 评论 -
LeetCode刷题_232. 用栈实现队列
刷题原创 2021-11-14 21:46:55 · 986 阅读 · 1 评论