- 博客(13)
- 收藏
- 关注
转载 C++的容器set
一、概念set容器中只能存储键,是单纯的键的集合,其中键是不能重复的。二、定义与初始化set对象的定义和初始化方法包括:set<T> s; set<T> s(s1); set<T> s(b, e);其中,b和e分别为迭代器的开始和结束的标记。例如:#include <stdio.h>#include <vector>#include <set>using namespace std;int m
2022-02-21 10:32:34
2538
原创 广度优先搜索(BFS)
一、概述BFS问题的本质就是让你在一幅图中找到从起点 start 到终点 target 的最近距离,即用来解决最短路径问题。第一次遍历到目的节点时,所经过的路径是最短路径。几个要点:只能用来求解无权图的最短路径问题 队列:用来存储每一层遍历得到的节点 标记:对于遍历过的结点,应将其标记,以防重复访问二、框架// 计算从起点 start 到终点 target 的最近距离int BFS(Node start, Node target) { Queue<No...
2022-02-18 17:41:04
201
原创 深度优先搜索(DFS)
一、概念深度优先搜索就是回溯算法。二、解题框架回溯算法解题套路框架 :: labuladong的算法小抄三、leetcode例题leetcode-46-全排列 vector<vector<int>> res; void backtrace(vector<int>& nums, vector<int>& path, vector<bool> used) { // 满足结束条件
2022-02-17 16:39:16
362
原创 二分查找算法
一、概念二分查找要求数组1)采用顺序存储结构,元素能够随机读取;2)必须按照关键字大小有序排列,从而可以在O(log2n)的时间复杂度解决问题。二分查找的常用场景:寻找一个数、寻找左侧边界、寻找右侧边界。二、二分查找的框架int binarySearch(vector<int> nums, int target) { int left = 0, right = ...; while(...) { int mid = (right + left) /
2022-02-14 21:57:42
205
原创 数据结构——单调栈
leetcode:1509、248、84、85、42一、单调栈概念1、单调栈通过维持栈内值的单调递增(递减)性,在O(n)的时间内处理需要大小比较的问题。作用:可以以O(1)的时间复杂度得知某个位置左右两侧比它大(或小)的数的位置,当你需要高效率获取某个位置左右两侧比它大(或小)的数的位置的时候用到单调栈。2、单调递增(递减)栈单调递增栈:找到左起第一个比当前数字小的元素for (int i = 0; i < T.size(); ++i) {while(! st.emp
2022-02-14 20:41:37
336
原创 Win10右键如何添加“新建PowerShell脚本”
https://jingyan.baidu.com/article/3a2f7c2e49f66567afd6119f.html
2022-02-14 15:52:15
440
原创 前缀和+哈希表优化
使用场景: 当需要大量判断某些区间的某一性质时使用。比如找出数组nums中满足某一性质的区间的个数,比如找出数组中最长的满足某一性质的区间,这些区间有O()个,这时就要想到用前缀和。例如求一个长度为n的序列的区间[j+1, i]的某一性质时,通过pre[i]-pre[j]可以以O(1)的时间复杂度判断这个区间是否具有这一性质。显然,这里的pre[i]-pre[j]也是狭义的。广义上来讲,凡是以pre[i]和pre[j]为参数,以O(1)时间复杂度得出判断结果的函数都可以。题目举例...
2022-02-12 20:27:22
604
原创 差分算法介绍
一、基本概念差分算法是前缀和算法的逆运算,可以快速的对数组的某一区间进行计算操作。 例如,有一数列 a[1],a[2],.…a[n],且令 b[i] = a[i]-a[i-1],b[1]=a[1],那么就有a[i] = b[1]+b[2]+.…+b[i] = a[1]+a[2]-a[1]+a[3]-a[2]+.…+a[i]-a[i-1],此时b数组称作a数组的差分数组,换句话来说a数组就是b数组的前缀和数组 例: 原始数组a:9 3 6 2 6 ...
2022-02-12 20:18:07
5560
原创 umount失败,报错:target is busy
一、问题描述在linux中挂载一个镜像之后,再卸载,结果报错:target is busy,如图:二、解决方法umount system.img -l
2022-01-27 11:24:24
1659
1
转载 WORD中设置“选择性粘贴“—“无格式文本”的快捷键
1、打开Word,点击左上角的文件。2、点击文件后,点击选项。3、进入Word选项,然后进入快速访问工具栏。4、进入快速访问工具栏中后,在所有命令中找到粘贴并只保留文本,然后点击添加。5、把粘贴并只保留文本添加后,选择这一项,把它顶到第一位。6、设置好之后,返回界面就可以在快速访问工具栏中看到粘贴只保留文本了,快捷键为Alt+1。7、复制文字后,按Alt+1就可以纸粘贴为文本了。参考:WORD中"选择性粘贴"—“无格式文本”的快捷键
2022-01-11 17:37:08
28318
1
原创 word将一个文档的样式导入到另一个文档
一、背景在word中编辑文档时,经常需要定义一个样式给特定格式的文本使用,如标题1,标题2等,而有时需要在一个新文档A中使用一个旧文档B中定义好的样式。二、操作步骤1、打开旧文档B,选择上方标签栏的"样式"->"管理样式",如图:2、在弹出窗口选择“导入/导出(X)”,然后点击“关闭文件”->“打开文件”,选择“所有文件”,再选择你想导入样式的新文件A,3、选择左边旧文档“B”中你需要的样式,如“普通表格”,点击“复制”导入到新文档A中即可。..
2021-12-20 10:40:07
26976
1
原创 word中设置文档的多级标题,如1,1.1,1.1.1等
word中设置文档的多级标题,如1,1.1,1.1.1等一、新建样式标题1,标题2,标题31、标题1新建word文档,在文档中写文字“一级标题”,选中“一级标题”,点击“样式”标签栏右下角,在弹出框选择“新建样式”,如图:将样式命名为“标题1”,字体设置为中文:黑体加粗三号,西文:Times New Roman加粗三号,段落设置为段前18磅,段后12磅,行距为固定值20磅。2、标题2同样的方法新建样式“标题2”,字体设置为中文:宋...
2021-11-08 15:52:17
31055
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人