- 博客(14)
- 收藏
- 关注
原创 贪心问题汇总
贪心算法1、最长合法括号子序列 1、最长合法括号子序列 4207. 最长合法括号子序列 这个不是动态规划问题 #include<bits/stdc++.h> using namespace std; int main(){ string s1; cin>>s1; int l = 0,r = 0; for(int i = 0 ;i < s1.size() ;i ++){ if(s1[i] =='(') l++; e
2022-01-09 10:30:10 399
原创 区间问题及模板
区间问题1、区间合并2、区间选点3、最大不相交区间数量4、区间分组5、区间覆盖 1、区间合并 2、区间选点 3、最大不相交区间数量 4、区间分组 5、区间覆盖
2022-01-07 15:49:07 879
原创 高级数据结构整理
树状数组1、树状数组2、线段树 原理就不讲了:小破站一搜一堆的,这里就放一些题目用于练习吧!参考连接也会附在相应位置!!!! 1、树状数组 2、线段树
2022-01-04 22:25:31 569
原创 深度优先搜素和回溯简单应用
回溯算法排列数字 排列数字 Acwing842.排列数字 给定一个整数 nnn,将数字 1∼n1∼n1∼n 排成一排,将会有很多种排列方法。 现在,请你按照字典序将所有的排列方法输出。 输入格式 共一行,包含一个整数 nnn。 输出格式 按字典序输出所有排列方案,每个方案占一行。 数据范围 1≤n≤71\leq n\leq71≤n≤7 输入样例: 3 输出样例: 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 #include<bits/stdc++.h> using
2022-01-04 18:18:23 431
原创 C++算法常见的问题
常见的问题约瑟夫环问题 约瑟夫环问题 剑指 Offer 62. 圆圈中最后剩下的数字 0,1,⋅⋅⋅,n−10,1,···,n-10,1,⋅⋅⋅,n−1这nnn个数字排成一个圆圈,从数字000开始,每次从这个圆圈里删除第mmm个数字(删除后从下一个数字开始计数)。求出这个圆圈里剩下的最后一个数字。 例如,0、1、2、3、40、1、2、3、40、1、2、3、4这555个数字组成一个圆圈,从数字0开始每次删除第333个数字,则删除的前4个数字依次是2、0、4、12、0、4、12、0、4、1,因此最后剩下的数字是
2022-01-03 18:09:05 366
原创 C++STL方法使用
优先队列 priority_queue<int,vector int>,greater<int> > heap;// 小顶堆 heap.push(x);// 插入 heap.top();// 获取队首 heap.pop();// 出队 heap.size();// 获取优先队列长度 heap.empty();//判断是否为空
2022-01-03 10:29:11 480
转载 动态规划问题总结
区间DP Acwing282. 石子合并 设有 N 堆石子排成一排,其编号为 1,2,3,…,N1,2,3,…,N1,2,3,…,N。 每堆石子有一定的质量,可以用一个整数来描述,现在要将这 NNN 堆石子合并成为一堆。 每次只能合并相邻的两堆,合并的代价为这两堆石子的质量之和,合并后与这两堆石子相邻的石子将和新堆相邻,合并时由于选择的顺序不同,合并的总代价也不相同。 例如有 444 堆石子分别为 1 3 5 2, 我们可以先合并 1、21、21、2 堆,代价为 444,得到 4 5 2, 又合并 1,21
2022-01-03 08:46:44 186
原创 模拟和打印矩阵算法
打印矩阵 Z字形打印数组 问题描述: 在图像编码的算法中,需要将一个给定的方形矩阵进行 Z 字形扫描(Zigzag Scan)。 给定一个 的矩阵,Z 字形扫描的过程如下图所示:
2022-01-02 17:10:59 258
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人