自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 Linux学习(二)

tmux功能允许Linux终端的分屏操作ctrl+b 进入操作模式后shift + % 将屏幕左右分屏shift + " 将屏幕上下分屏⬆ ↓ ← → 切换操作的屏幕ps :这些操作都要按下ctrl+b 后执行ctrl+d 退出在终端断开网路或者意外关闭时仍然可以保存在终端输入 tmux a可以会到上次未关闭的页面中基本操作在tmux中选中文本时,需要按住shift键。 tmux中复制/粘贴文本的通用方式: (1) 按下Ctrl + b后松开手指,然后按[

2022-03-06 16:01:10 387

原创 Linux学习(一)

ls 操作ls 是查看当前位置的所有文件 -l 详细信息 -hl 人性化详细信息(把字节改成多少k或者m) -a 查询隐藏文件(所有以.开头的文件都是隐藏文件)用 mv tmp.txt .tmp.txt 把它变成隐藏文件打开终端时 系统默认的目录为家目录,在家目录上还要一个根目录pwd 操作pwd是显示当前的位置cd 操作cd 表示前往 cd a 为进入a中此时的文件位置发生了改变返回操作 ,返回 home目录cd ./ 表示进入当前的文件 等价于原地不动cd ../

2022-02-28 19:09:51 233 2

原创 八数码(BFS求对短路,哈希表储存)

题目:在一个 3×3 的网格中,1∼8 这 8 个数字和一个 x 恰好不重不漏地分布在这 3×3 的网格中。例如 1 2 3x 4 67 5 8在游戏过程中,可以把 x 与其上、下、左、右四个方向之一的数字交换(如果存在)。我们的目的是通过交换,使得网格变为如下排列(称为正确排列):1 2 34 5 67 8 x例如,示例中图形就可以通过让 x 先后与右、下、右三个方向的数字交换成功得到正确排列。交换过程如下:第一步:1 2 3x 4 67 5 8第二步:1 2 34

2021-11-20 00:12:52 139 1

原创 最短路合集

在面对不同情景下采用的不同算法朴素的迪杰斯特拉算法适用情况:稠密图(点的个数e 边的数量v 有e≈v*v)储存图的数据结构:邻接矩阵(一个二维数组 g[【i】【j】表示点i到点j的距离)时间复杂度 n*n;代码说明dist[N] 表示起始点到1到n点的距离 若不存在则为最大值(0x3f3f3f3f)核心是找到数组dist中最小值每次找到最小值(如果最小值为dist【t】)时 开始遍历1到n点中dist【j】(点1到点j的距离)与dist【t】(点1到t的距离)+g【t】【j】(表示点

2021-06-03 21:02:49 163 1

原创 背包问题 01

背景:有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。第 i 件物品的体积是 vi,价值是 wi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。思路:状态转移定义:f【i】【j】表示 当装有i个物品时 体积为j的最优解具体思路:1,当第i件物品不能装进去时 即剩余的空间小于wi此时的最优解f【i】【j】=f【i-1】【j】;2。当第i件物品可以装进去时 可以选择装或者不装装:f【i】【j】=f【i-1】【j-vi】+wi;不装 f【

2021-05-09 16:22:12 63

原创 浅谈bfs

BFS即广度搜索,它不同于深度搜索 BFS的思想是一层层的去搜索直到搜索到终点,所以根据这一特性可以知道BFS搜索找到的点一点是最近的那一个点,常常用来解决迷宫问题;用到的知识点:队列;BFS常用于迷宫,即从一点到另一点的最短路径,所以这里以一个迷宫来说明:这里有一个5*5的迷宫,1是墙,0是路,那么从左上角走道右下角最少需要多少步呢?0 1 0 0 00 1 0 1 00 0 0 0 00 1 1 1 00 0 0 1 0首先把终点设为3,走过的路设为2,可以得到这样的过程图:在解

2021-04-20 21:24:45 96

原创 数组模拟链表(单链表和双链表)

在创建单链表时如果使用使用动态的单链表,那么每创建一个结点时就会使用new 当数据比较大的时候,程序运行的时间很长 所以在写题的时候 往往会那数组来模拟一个链表;先进行如下定义:head为头结点的头指针;idx为当前记录到那个结点;那数组e【N】和ne[N]来模拟一个静态链表,数组e用来储存当前结点的值,ne表示下一个结点的下标;初始化初始化时将头节点的头指针指向-1,此时idx=0,因为要下一个处理下标为0的结点void init()//初始化链表 { head=-1; idx=0;

2021-04-19 21:24:19 2235

原创 简单的离散化

适用环境:当所给数据之间的跨度特别大的时候且数据中有负数;核心思想:映射 ,将所给数据重新映射到一个数组中如在数轴位置为:12312,23,2,-123213124,3219上进行若干操作 然后再给出L,R求[L,R]之间的和;在这里只要将12312,23,2,-123213124,3219,L,R排序后 映射为1 2 3 4 5 6 7;即可例题:假定有一个无限长的数轴,数轴上每个坐标上的数都是 0。现在,我们首先进行 n 次操作,每次操作将某一位置 x 上的数加 c。接下来,进行 m

2021-04-10 14:50:52 106

原创 最长上升子序列

最长上升子序列Q;给定一个长度为 N 的数列,求数值严格单调递增的子序列的长度最长是多少。```cpp//简单的动态规划 #include<iostream>#include<algorithm>using namespace std;const int N =1010;int a[N],f[N],n;//f[N]数组用来储存第i哥数字的最长上升子序列 int main(){ cin>>n; for(int i=1;

2021-04-08 20:06:44 51

原创 简单高精度的加减乘除以及vector的基本基本用法

高精度的加法可以解决上百位数的加法< vector>的一些简单 用法#include<iostream>#include<algorithm>#include<vector>using namespace std;int main(){ vector<int> v(5,1);//表示v里面含有5个元素且全为1 ; vector<int> a; for(int i=0;i<5;i++) { a.pu

2021-04-08 09:10:30 446

原创 第三周总结

文章目录前言一、树是什么?1 树的定义## 树的基本术语二、使用步骤1.引入库2.读入数据总结前言第三周总结一、树是什么?树结构是一种重要的非线性数据结构,其中二叉树用的最为广泛。如操作系统中用树表示文件目录的组织结构,在编译系统中表示源程序的语法结构,在数据库中,树结构也是信息的重要组织形式之一。1 树的定义树是n(n>=0)个结点的有限集,它或为空树即n等于0,或非空树,对于树T它有如下性质:有且仅有一个称之为根的结点;除根结点之外的其余结点可分为m个互不相交的有限集T1,T2

2021-01-31 12:53:35 98

第二周总结

这是一个目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录这是一个目录前言一、二分二、前缀和与差分一维前缀和二维前缀和一维差分二维差分三.位运算总结前言这周学习的知识有1栈、队列、串和stack、queue2二分3前缀和与差分4位运算其中1和4掌握的不是很好该博客记录这周写的一些关于以上知识点的题目一、二分二分分为实数二分和整数二分二分算法就三个模板 整数两个整数二分模板#inc

2021-01-24 17:54:01 200

原创 浅谈STL

浅谈STL的理解文录浅谈STL的理解前言一、STL是什么?二、STL的组成三、STL的使用四、STL之string五,STL之vector总结前言一、STL是什么?STL(Standard Template Library),即标准模板库,是一个具有工业强度的,高效的C++程序库。可以理解TL是一些“容器”的集合,这些“容器”有list,vector,set,map等,STL也是算法和其他一些组件的集合。其中STL这个"容器“‘里有很多头文件 包含以下13个 、、、、、、<memory.

2021-01-17 14:23:19 327 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除