自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Veeupup博客

talk is cheap,show me the code。

  • 博客(24)
  • 收藏
  • 关注

原创 7-8 哈利·波特的考试,7-9 旅游规划,7-10 公路村村通

文章目录7-9 哈利波特的考试7-8 旅游规划7-10 公路村村通之所以把 7-8,7-9,7-10 放到一起,是因为这三个题都是非常经典的图算法,在之前总结的算法笔记中已经提到过,这里只是做一个复习,所以整理到一起。发现自己的记忆力是真的不行,还是需要勤加努力多认真学习才能把这些算法都掌握住。7-9 哈利波特的考试这道题目是想考全局最短路径,Floyd 算法,直接使用 Floyd 算法即...

2020-03-30 16:21:54 373

原创 PTA-7-7六度空间(图的BFS)

本题考查点:图的遍历方式题目描述“六度空间”理论又称作“六度分隔(Six Degrees of Separation)”理论。这个理论可以通俗地阐述为:“你和任何一个陌生人之间所间隔的人不会超过六个,也就是说,最多通过五个人你就能够认识任何一个陌生人。”如图1所示。图1 六度空间示意图“六度空间”理论虽然得到广泛的认同,并且正在得到越来越多的应用。但是数十年来,试图验证这个理论始...

2020-03-29 16:20:21 572

原创 PTA-7-6 列出连通集(并查集+DFS+BFS)

本题考查点:图的并查集图的 BFS 和 DFS题目描述:给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集。假设顶点从0到N−1编号。进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序访问邻接点。输入格式:输入第1行给出2个整数N(0<N≤10)和E,分别是图的顶点数和边数。随后E行,每行给出一条边的两个端点。每行中的数字之间用1空格分...

2020-03-29 16:05:26 377

原创 PTA-7-5 堆的路径

本题主要考察堆的性质(建堆,向堆中插入数据)。将一系列给定数字插入一个初始为空的小顶堆H[]。随后对任意给定的下标i,打印从H[i]到根结点的路径。输入格式:每组测试第1行包含2个正整数N和M(≤1000),分别是插入元素的个数、以及需要打印的路径条数。下一行给出区间[-10000, 10000]内的N个要被插入一个初始为空的小顶堆的整数。最后一行给出M个下标。输出格式:对输入中给出的...

2020-03-29 15:56:00 223

原创 PTA-7-4 是否是同一棵二叉搜索树

总体思路:采用先序遍历的方式来进行比较即可。(静态树)题目描述:给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你需要判断它们是否能生成一样的二叉搜索树。输入格式:输入包含若干组测试数据。每组数据的第1行给出...

2020-03-29 15:47:48 207

原创 PTA-7-3 树的同构

题目描述:给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。现在给定两棵树,请你判断是否是同构的。很惭愧,这个题目做的很复杂,但是思路很清晰,希望能分享出来,思路和难点如下:同构的树有一个特点,那就是每一层的...

2020-03-29 15:38:49 635

原创 PTA-7-2 一元多项式的乘法与加法运算

本体的思路就是模拟多项式的乘法,题目描述如下:7-2 设计函数分别求两个一元多项式的乘积与和。输入格式:输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。输出格式:输出分2行,分别以指数递降方式输出乘积多项式以及和多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。零多项式应输...

2020-03-29 15:26:52 838

原创 PTA-7-1 最大子列和问题

为什么要开始记录刷题笔记呢?因为发现自己经常在做完很多题目之后并没有总结和反思,所以才会忘得很快,所以从现在开始把所有值得记录的东西,经过自己思考的东西都记录下来,写成博客。题目:给定K个整数组成的序列{ N1, N2, …, N**K },“连续子列”被定义为{ N**i, N**i+1, …, N**j },其中 1≤i≤j≤K。“最大子列和”则被定义为所有连续子列元素的和中最大者。例...

2020-03-29 15:24:16 302

原创 算法中的数学问题:最大公约数与最小公倍数、分数的四则运算、素数(快速求素数)、分解质因数

算法中常见的数学问题在计算机世界里,我们通常还是要解决一些数学问题,这里对一些常见数学问题的算法进行总结,希望能够减慢遗忘的速度。文章目录算法中常见的数学问题最大公约数和最小公倍数最大公约数最小公倍数分数的四则运算分数的表示和化简分数的表示分数的化简分数的四则运算分数的输出素数素数的判断素数表的获取分解质因数最大公约数和最小公倍数最大公约数正整数 a 与 b 的最大公约数是指 a 与 b...

2020-03-24 19:41:24 605

原创 树-哈夫曼树-构建和实现

哈夫曼树 Huffman Tree文章目录哈夫曼树 Huffman Tree定义构建哈夫曼树的算法代码实现定义在一个果园里,小明已经将所有的水果打了下来,并按水果的不同种类分成了若干堆,小明决定把所有的水果合成一堆。每一次合并,小明可以把两堆水果合并到一起,消耗的体力等于两堆水果的重量之和。当然经过 n‐1 次合并之后,就变成一堆了。小明在合并水果时总共消耗的体力等于每次合并所耗体力之...

2020-03-23 11:20:48 883

原创 树-堆-堆的实现-堆排序

堆文章目录堆堆的实现建堆过程删除堆顶元素向堆中增加元素堆排序堆是一棵完全二叉树,每个节点的值都不小于(不大于)其左右孩子结点的值。如果父亲结点的值大于等于孩子结点的值,那么称这样的堆为大顶堆,这时每个节点的值都是以它为根结点的子树的最大值;反之为小顶堆。堆的实现由于堆是一棵完全二叉树,所以我们可以用数组来实现一棵完全二叉树,也就能实现堆。完全二叉树:除了最下面一层之外,其余层的结点...

2020-03-23 11:19:34 263

原创 树-并查集的原理和实现

并查集文章目录并查集定义并查集的基本操作初始化查找合并定义并查集是一种维护集合的数据结构,并:Union,查:Find,集:Set。并查集支持下面两种操作:合并:合并两个集合查找:判断两个元素是否在一个集合并查集使用一个数组实现int father[N];其中 father[i] 代表元素 i 的父亲节点,而父亲节点本身也是这个集合内的元素。如果 father[i] ==...

2020-03-23 11:18:12 1018

原创 树-二叉查找树

二叉查找树 BST文章目录二叉查找树 BST定义插入结点删除结点查找结点定义这里给出平衡二叉树的一个实现。二叉查找树是一种特殊的二叉树,又称为二叉排序树、二叉搜索树。这里给出一些经典的二叉查找树的题目:递归定义如下:节点的左子树仅包含键值小于节点键值的节点。节点的右子树仅包含键大于或等于节点的键的节点。左和右子树都必须也是二叉搜索树。这里主要是要对二叉树插入结点和删除结点做...

2020-03-23 11:17:29 209

原创 动态规划-01背包-完全背包

背包问题多阶段动态规划问题有一类动态规划可解的问题,它可以描述称为若干有序的阶段,且每个阶段的状态只和上一个阶段的状态有关,一般把这类问题称为多阶段规划问题。01 背包问题01背包问题描述如下:有 n 件物品,每件物品的重量为 w[i],价值为 c[i]。现有一个容量为 V 的背包,问如何选取物品放入背包,使得背包内物品的总价值最大。其中每种物品都只有一件。例子:5 8 // 5 ...

2020-03-23 10:52:00 210

原创 动态规划-最长回文子串解法

最长回文子串最长回文子串的问题描述:给出一个字符串 S,求 S 的最长回文子串的长度例子:字符串 “PATZJUJZTACCBCC” 的最长回文子串为 “ATZJUJZTA”,长度为 9还是先看暴力解法,枚举子串的两个端点 i 和 j,需要判断在 [i, j] 内的子串是否回文,从复杂度上看,枚举端点需要 O(n2),判断回文需要 O(n),总复杂度为 O(n3)。那我们介绍一...

2020-03-22 21:31:29 139

原创 动态规划-最长公共子序列

最长公共子序列最长公共子序列(Longest Common SubSequence)的问题描述为:给定两个字符串A和B,求一个字符串,使得这个字符串是 A 和 B 的最长公共部分例如:“sadstory” 和 “adminsorry” 的最长公共子序列为 “adsory”,长度为 6如果是暴力解法遍历的话……设A和B的长度分别是 n 和 m,对于两个字符串的子序列各有 2n, 2m,然...

2020-03-22 20:56:48 153 1

原创 动态规划-最长不下降子序列(LIS)

最长不下降子序列(LIS)最长不下降子序列(Longest Increasing Subsequence)是动态规划中的一个非常经典的问题:在一个数字序列中,找到一个最长的子序列(可以不连续),使得这个子序列是不下降(非递减)的例如 A = {1, 2, 3, -1, -2, 7, 9} ,它的最长不下降子序列是 {1, 2, 3, 7, 9},长度为 5。对于这个问题,最简单的办法就...

2020-03-22 20:22:24 536

原创 一文搞懂树莓派的系统安装+默认键盘更换+换源+wifi自动连接

​ 在大三暑假开学前接触到了树莓派这个东西,给人的感觉很geek ,于是购入Raspberry Pi 3 B+型号,一张16G 的内存卡,自己再购入了一块亚克力板加上小风扇(散热效果很好)。​ 于是开始愉快的搞机。文章目录系统刻录默认键盘更换默认源更换设定自动寻找WIFI并连接网络配置设定已知WIFI其他系统刻录直接去官网下载最适合树莓派的系统 RASPBIAN ,然后用win32Disk...

2020-03-22 17:58:37 493

原创 如何进行一次网络渗透或者攻击?

在网安实验室暑期实习中,兴趣使然对网络安全方面进行了学习,在此记录下网络渗透中的一般步骤和常用工具,希望能够对后来人有一点点帮助。网络渗透网络渗透过程准备阶段相关信息搜集常见漏洞扫描和分析实施攻击善后阶段跳板技术日志修改好用的工具网络渗透过程网络渗透主要分为三个阶段,准备阶段、实施阶段和善后阶段,这三个阶段都不可少,都是必备的部分,故不可忽视任何一个部分。渗透环境:Kali Linux(十...

2020-03-22 17:52:30 2830 1

原创 动态规划-最大连续子序列和

动态规划-最大连续子序列和最大连续子序列问题如下:给定一个数字序列,A1,A2,A3,…,An,求 i,j ( 1<= i,j <= n ),使得Ai+…+Aj 最大,输出这个最大和。这个问题如果使用暴力法,枚举左端点 i 和右端点 j ,需要 O(n2)的时间复杂度,再计算 A[i] + … + A[j] 需要 O(n),总复杂度为 O(n3)。就算采用前缀和的方式,也需要...

2020-03-22 16:22:32 364

原创 动态规划-递归与递推写法

动态规划文章目录动态规划递归写法(自顶向下)递推写法(自底向上)核心思想动态规划(Dynamic Programming, DP)是一种用来解决一类最优化问题的算法思想。简单来说,动态规划是将一个复杂的问题分解成若干个子问题,通过综合子问题的最优解来得到原问题的最优解。动态规划会把每个求解过的子问题的解记录下来,这样当下一次碰到同样的子问题时,就可以直接使用之前记录的结果,而不是重复计算。...

2020-03-22 15:47:29 529

原创 图-拓扑排序-有向无环图

拓扑排序文章目录拓扑排序有向无环图拓扑排序排序方法有向无环图如果一个有向图的任意顶点都无法通过一些有向边回到自身,那么称这个图为有向无环图(Directed Acyclic Graph, DAG)。拓扑排序拓扑排序是将有向无环图 G 的所有顶点排序成一个线性序列,使得对图 G 中的任意两个顶点 u,v,如果存在边 u->v ,那么序列 u 一定在 v 前面。这个序列称为 拓扑序列。...

2020-03-22 14:01:13 641

原创 图-最小生成树-Prim与Kruskal算法

最小生成树文章目录最小生成树Prim算法基本思想具体实现邻接矩阵版邻接表版Kruskal 算法基本思想具体实现最小生成树(Minimum Spanning Tree,MST)是在一个给定的无向图G(V,E)中求一棵树 T,使得这棵树拥有图 G中的所有顶点,且所有边都是来自图 G 中的边,并且满足整棵树的边权之和最小。最小生成树有三个性质需要掌握:最小生成树是树,因此其边数等于顶点数减 1...

2020-03-22 13:59:20 377

原创 图-最短路径-Dijkstra、Flyod及其延伸

最短路径文章目录最短路径Dijkstra 算法算法思想具体实现邻接矩阵版邻接表版最短路径多条最短路径Dijkstra+DFS最短路径问题:给定任意的图G(V,E) 和起点 S,终点 T,如何求从 S 到 T 的最短路径。解决最短路径的常用方法有Dijkstra 算法Bellman-Ford 算法SPFA 算法Floyd 算法这篇文章主要讨论 Dijkstra 算法及其变种。...

2020-03-22 00:32:39 695

空空如也

空空如也

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

TA关注的人

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