自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 排序算法(较全)

#include<iostream>#include<queue>#include<vector>#include<list> #include<algorithm>using namespace std;void InsertSort(int a[],int n){//直接插入排序 int i,j,tmp; for(i=1;i<n;i++){ j=i-1; tmp=a[i];//之后的操作a[i]被污染,需要.

2021-08-12 10:15:11 112

原创 图的存储和操作

一、图的概念及定义1.图G由两个集合V和E组成,记为G=(V,E),其中V是顶点的有限集合,E是连接V中两个不同的顶点的边的有限集合。如果E中的顶点对是有序的,即E中的每条边都是有方向的,则称G为有向图。如果顶点对是无序对,则称G是无向图。一般情况下,图G的边集合记为E(G),顶点集合记为V(G)。2.设G是一个无向图,v是V(G)集合中的元素,即v是G中的一个点,E(G)中以v为端点的边的个数,称为顶点v的度。若G是有向图,则v的出度是 以v为始点的边的个数,v的入度是以v为终点的边的个数。3

2021-08-12 10:11:11 203

原创 等价类和并查集

一、等价类的定义集合S上有关系

2021-07-18 17:35:01 429

原创 哈夫曼树及哈夫曼编码(详细工程讲解)

一、什么是哈夫曼编码?1.文件编码文件是由字符构成的,ACSII码中大概包含100个可打印的字符,每一个字符都有其特定的编码,扩展ACSII码为8位,也就是说不同的字符都需要用8位二进制位来编码,这是一种等长码。在一些文件中,每个字符出现的频率是不等的,对于哪些出现频率相对较低的字符来说,用同样长度的编码就浪费了空间,因此我们要简化编码就需要根据实际情况来确定编码长度,这就是文件压缩的思想。但是我们如何将一个文本文件压缩后解压还和原来文件一样呢?我们就需要设计新的...

2021-07-18 16:07:09 2746 4

原创 二叉树的相关操作(超详细)

二叉树是一种非常重要的数据结构,二叉树有许多优良的性质,在处理许多问题时,我们经常选择用二叉树作为使用的数据结构,接下来我们来看看二叉树有哪些操作吧!目录一、一、二叉树的创建:我会给出二叉树的几种创建方法,代码经过测试,没有删改,可以直接调用。1、#法表示空节点的数据流创建:例如:124###35##6##直接采用递归建树的方式,先建左子树,后建右子树,直到所以节点的左右儿子都确定下来(空或存在都视为确定)void create_tree(Tree* &t...

2021-07-18 11:00:01 399

原创 二叉树的第一条最长路径

打印输出二叉树的第一条最长路径:我的思路是计算每一个节点的高度,若右儿子的高度比左儿子高,则向右儿子走,否则向左儿子走,下面的几种算法,可以在创建二叉树后加入一个标记height记录结点的高度,比较高度即可,也可以边走边计算高度。#include<iostream>#include<queue>using namespace std;typedef struct tree{ int data; int depth; struct tree* left; st.

2021-07-16 18:42:17 785

原创 两种模式匹配算法

在处理多行文本寻找子串时,我们用到查找的方法叫做模式匹配,下面我介绍两种模式匹配算法:1.朴素模式匹配算法:顾名思义,朴素的模式匹配算法就是按照匹配串的字符顺序每循环自增一来匹配模式串。int simple_StringMatching(string match,string target,int pos){ //match是模式串,target是目标串,pos是开始匹配的位置 int i=pos,j=0; while(i<target.size()-match.siz

2021-07-16 18:32:06 1578

原创 数据结构第七次上机题解

一、序列调度有一个N个数的序列A:1,2,……,N。有一个后进先出容器D,容器的容量为C。如果给出一个由1到N组成的序列,那么可否由A使用容器D的插入和删除操作得到。输入格式:第1行,2个整数T和C,空格分隔,分别表示询问的组数和容器的容量,1≤T≤10,1≤C≤N。第2到T+1行,每行的第1个整数N,表示序列的元素数,1≤N≤10000。接下来N个整数,表示询问的序列。输出格式:T行。若第i组的序列能得到,第i行输出Yes;否则,第i行输出No,1≤i≤T。输入样例:在这里

2021-06-21 15:47:01 242

原创 数据结构第六次上机题解

一、高精度数加法高精度数是指大大超出了标准数据类型能表示的范围的数,例如10000位整数。很多计算问题的结果都很大,因此,高精度数极其重要。一般使用一个数组来存储高精度数的所有数位,数组中的每个元素存储该高精度数的1位数字或多位数字。 请尝试计算:N个高精度数的加和。这个任务对于在学习数据结构的你来说应该是小菜一碟。 。输入格式:第1行,1个整数N,表示高精度整数的个数,(1≤N≤10000)。第2至N+1行,每行1个高精度整数x, x最多100位。输出格式:1行,1个高精度整数

2021-06-10 23:17:23 425 2

原创 数据结构第五次上机实验报告

一、图的深度优先搜索I无向图 G 有 n 个顶点和 m 条边。求图G的深度优先搜索树(森林)以及每个顶点的发现时间和完成时间。每个连通分量从编号最小的结点开始搜索,邻接顶点选择顺序遵循边的输入顺序。在搜索过程中,第一次遇到一个结点,称该结点被发现;一个结点的所有邻接结点都搜索完,该结点的搜索被完成。深度优先搜索维护一个时钟,时钟从0开始计数,结点被搜索发现或完成时,时钟计数增1,然后为当前结点盖上时间戳。一个结点被搜索发现和完成的时间戳分别称为该结点的发现时间和完成时间输入格式:第1行,2个

2021-06-04 19:32:37 332

原创 最小生成树--普利姆算法(例题)

7-10 公路村村通 (30 分)现有村落间道路的统计数据表中,列出了有可能建设成标准公路的若干条道路的成本,求使每个村落都有公路连通所需要的最低成本。输入格式:输入数据包括城镇数目正整数N(≤1000)和候选道路数目M(≤3N);随后的M行对应M条道路,每行给出3个正整数,分别是该条道路直接连通的两个城镇的编号以及该道路改建的预算成本。为简单起见,城镇从1到N编号。输出格式:输出村村通需要的最低成本。如果输入数据不足以保证畅通,则输出−1,表示需要建设更多公路。输入样例:6

2021-05-31 20:17:24 2501

原创 数据结构第四次实验题解

一、连通分量无向图 G 有 n 个顶点和 m 条边。求 G 的连通分量的数目。输入格式:第1行,2个整数n和m,用空格分隔,分别表示顶点数和边数, 1≤n≤50000, 1≤m≤100000.第2到m+1行,每行两个整数u和v,用空格分隔,表示顶点u到顶点v有一条边,u和v是顶点编号,1≤u,v≤n.输出格式:1行,1个整数,表示所求连通分量的数目。输入样例:在这里给出一组输入。例如:6 51 31 22 34 55 6输出样例:在这里给出相应的输.

2021-05-29 17:31:30 858

原创 数据结构第三次实验解题报告

一、二叉树最长路径给定一棵二叉树T,求T中的最长路径的长度,并输出此路径上各结点的值。若有多条最长路径,输出最右侧的那条。输入格式:第1行,1个整数n,表示二叉树有n个结点, 1≤n≤100000.第2行,2n+1个整数,用空格分隔,表示T的扩展先根序列, -1表示空指针,结点用编号1到n表示。输出格式:第1行,1个整数length,length表示T中的最长路径的长度。第2行,length+1个整数,用空格分隔,表示最右侧的最长路径。输入样例:在这里给出一组输入。例如:51 2 -1

2021-05-22 15:08:00 254

原创 数据结构第二次实验题解

数据结构第二次实验题解一、7-1 数列查询已知数列的通项公式为: f(n) = f(n-1)*11/10,f[1]=10. 通项从左向右计算,*和/分别表示整数乘法和除法。 现在,要多次查询数列项的值。输入格式:第1行,1个整数q,表示查询的次数, 1≤q≤10000. 第2至q+1行,每行1个整数i,表示要查询f(i)的值。输出格式:q行,每行1个整数,表示f(i)的值。查询的值都在32位整数范围内。输入样例:在这里给出一组输入。例如:3123输出样例:在这里给出相应的输

2021-05-17 16:37:28 454

原创 数据结构第一次实验题解报告

数据结构第一次实验题解报告一、7—1重复计数在一个有限的正整数序列中,有些数会多次重复出现。请你统计每个数的出现次数,然后按数字在序列中第一次出现的位置顺序输出数及其次数。输入格式:第1行,1个整数N,表示整数的个数,(1≤N≤50000)。第2行,N个正整数,每个整数x 都满足 1 ≤ x ≤2000000000。输出格式:若干行,每行两个用一个空格隔开的数,第一个是数列中出现的数,第二个是该数在序列中出现的次数。输入样例:在这里给出一组输入。例如:128 2 8 2 2 11 1

2021-05-16 21:00:12 394 1

空空如也

空空如也

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

TA关注的人

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