数据结构
伦比兔
这个作者很懒,什么都没留下…
展开
-
7-17 字符串关键字的散列映射 (25分) (防止标题重复)
不能在HashCode()求key值对key%P, 而应该在插入到list中或者解决冲突的时候可以求余对一些变量名和函数名有疑问可以在评论回复#include <iostream>#include <cstdlib>#include <string>using namespace std;const int constnum = 32;const int MAXNUM = 1e3 + 20;string Hashtable[MAXNUM];stri.原创 2020-12-18 11:40:53 · 313 阅读 · 0 评论 -
鲁大师的图的DFS c++实现
主体还是PPT上的代码,只是访问函数稍稍改动了一下然后补充了辅助函数的实现,都不难时间复杂度分析在注释里#include <iostream>#include <cstdio>using namespace std;const int MVNUM = 1e2 +5;const int INF = 65535;typedef int Status;typedef char VertexType;typedef struct{ VertexType vex原创 2020-11-25 20:44:24 · 155 阅读 · 0 评论 -
鲁大师的最小生成树的Prim算法c++实现
不是很难写,不过突然感觉 c++这个面向对象的语言被我用成了面向过程好可惜#include <iostream>#include <cstdio>using namespace std;const int MVNUM = 1e2 + 5;const int INF = 65535;//权值的数据类型typedef int VRType;//节点类型typedef char VertexType;typedef struct{ //节点的映射表.原创 2020-11-25 19:59:19 · 112 阅读 · 0 评论 -
等我想的时候我再来添加图片-PTA图的基本概念和存储结构(选择和填空)
图的概念与存储结构 题目分析1-1用邻接表法存储图,占用的存储空间数只与图中结点个数有关,而与边数无关(F)【分析】 所有链表的长度和 与 边数有关1-2如果无向图G必须进行两次广度优先搜索才能访问其所有顶点,则G一定有2个连通分量(T)【分析】连通分量:一个连通图只有一个连通分量,两个连通分量说明有两个不连通的子图无论 广度优先还是深度优先最终实现的功能都是遍历访问一个连通图的所有顶点1-3无向连通图所有顶点的度之和为偶数。(T)【分析】任何图的度之和 = 边数 * 2 所以度之原创 2020-11-20 20:49:32 · 902 阅读 · 0 评论 -
7-20 奥运排行榜(c++ STL)
我开始水题了(我好像一直都在水题)#include <iostream>#include <cstdlib>#include <algorithm>using namespace std;const int INF = 65535;const int MAXNUM = 1e5 + 5;typedef struct info{ int id; int Gold_medals; int Number_of_medals; in原创 2020-11-15 16:37:33 · 435 阅读 · 0 评论 -
7-20 奥运排行榜 (25分)(c++ STL)
整体代码是参考这位博主的(再次感谢这位博主,已经参考过他的好几篇代码了,再次推荐一下)https://blog.csdn.net/xiang_6/article/details/78201197但是在处理热门话题的时候 注意要将非字母和非数字的字符转化成空格然后注意处理之后 话题的前面和末尾 可能还有空格然后 两个分词之间只能有一个空格map和set还有string太香了!#include <iostream>#include <cstdlib>#include &原创 2020-11-15 15:31:20 · 508 阅读 · 0 评论 -
7-17 字符串关键字的散列映射 (25分)(哈希+平方探测)
最后一个数据是啥,大佬可以告诉我吗?还是STL方便,下面是大佬代码https://blog.csdn.net/xiang_6/article/details/78254367原创 2020-11-13 17:20:35 · 452 阅读 · 0 评论 -
不包含小于20的质因数的合数?(防止题目重复)
不包含小于20的质因数的合数?比如667,它的因数只有1、23、29、667,其中1和667都不是质因数原创 2020-11-11 22:44:52 · 728 阅读 · 0 评论 -
7-15 航空公司VIP客户查询 (25分)(哈希,处理冲突,散列函数)(c++)
处理冲突的方法就是 用的链表。感觉处理好的话,用线性探测再散列 也可以。下列代码中,哈希表的结构:每个节点的其实都代表一条链,其中,链的头节点不存放信息,首元素节点及之后存放信息。#include <iostream>#include <cstdlib>#include <cstring>#include <cstdio>using namespace std;//身份证号长度const int ID_LENGTH = 20;const i原创 2020-11-11 19:22:36 · 774 阅读 · 1 评论 -
7-19 寻找大富翁 (25分)(c++)(归并排序)
自己的归并排序写的不好。主要是提醒一下第三个测试点,m > n时, 要修改m的值#include <iostream>#include <cstdlib>using namespace std;const int MAXNUM = 1100000;long int arr[MAXNUM];long int temp[MAXNUM];//合并void Merge(int st, int mid, int ed){ int i = st, j =原创 2020-11-07 20:16:02 · 392 阅读 · 0 评论 -
7-6 银行排队问题之单队列多窗口加VIP服务 (30分)(c++)(模拟)
假设银行有K个窗口提供服务,窗口前设一条黄线,所有顾客按到达时间在黄线后排成一条长龙。当有窗口空闲时,下一位顾客即去该窗口处理事务。当有多个窗口可选择时,假设顾客总是选择编号最小的窗口。有些银行会给VIP客户以各种优惠服务,例如专门开辟VIP窗口。为了最大限度地利用资源,VIP窗口的服务机制定义为:当队列中没有VIP客户时,该窗口为普通顾客服务;当该窗口空闲并且队列中有VIP客户在等待时,排在最前面的VIP客户享受该窗口的服务。同时,当轮到某VIP客户出列时,若VIP窗口非空,该客户可以选择空闲的普通窗.原创 2020-11-07 17:08:36 · 913 阅读 · 0 评论 -
7-5 银行排队问题之单队列多窗口服务 (25分)(c++)
首先,先感谢这位大佬的代码:https://www.cnblogs.com/sykline/p/9816874.html注释易懂,思路清晰。以下思路和代码都是参考他的假设银行有K个窗口提供服务,窗口前设一条黄线,所有顾客按到达时间在黄线后排成一条长龙。当有窗口空闲时,下一位顾客即去该窗口处理事务。当有多个窗口可选择时,假设顾客总是选择编号最小的窗口。本题要求输出前来等待服务的N位顾客的平均等待时间、最长等待时间、最后完成时间,并且统计每个窗口服务了多少名顾客。 输入格式:输入第1行给出正整数N(原创 2020-11-06 14:59:00 · 372 阅读 · 0 评论 -
7-4 银行排队问题之单窗口“夹塞”版 (30分)(c++)
7-4 银行排队问题之单窗口“夹塞”版 (30分)排队“夹塞”是引起大家强烈不满的行为,但是这种现象时常存在。在银行的单窗口排队问题中,假设银行只有1个窗口提供服务,所有顾客按到达时间排成一条长龙。当窗口空闲时,下一位顾客即去该窗口处理事务。此时如果已知第i位顾客与排在后面的第j位顾客是好朋友,并且愿意替朋友办理事务的话,那么第i位顾客的事务处理时间就是自己的事务加朋友的事务所耗时间的总和。在这种情况下,顾客的等待时间就可能被影响。假设所有人到达银行时,若没有空窗口,都会请求排在最前面的朋友帮忙(包括正原创 2020-11-04 20:25:49 · 416 阅读 · 0 评论 -
7-13 畅通工程之局部最小花费问题 (35分)(c++)
7-13 畅通工程之局部最小花费问题 (35分)某地区经过对城镇交通状况的调查,得到现有城镇间快速道路的统计数据,并提出“畅通工程”的目标:使整个地区任何两个城镇间都可以实现快速交通(但不一定有直接的快速道路相连,只要互相间接通过快速路可达即可)。现得到城镇道路统计表,表中列出了任意两城镇间修建快速路的费用,以及该道路是否已经修通的状态。现请你编写程序,计算出全地区畅通需要的最低成本。输入格式:输入的第一行给出村庄数目N(1≤N≤100);随后的N(N−1)/2行对应村庄间道路的成本及修建状态:每.原创 2020-11-02 21:47:35 · 519 阅读 · 0 评论 -
PTA-拓扑排序 6-1Topological Sort (25分)
Write a program to find the topological order in a digraph.//求各节点入度1 -- code is okvoid Get_indegree_all_vertex(LGraph Graph, int *indegree){ for (int i = 0; i < Graph->Nv; i++) indegree[i] = 0; for (int i = 0; i < Graph->Nv.原创 2020-10-27 21:45:06 · 972 阅读 · 0 评论 -
关键路径(防止题目重复)
DAG(Directed AcyclineGraph) 有向无环图用来描述一个工程或系统的进行过程。一个工程可以分为若干个子工程,只有完成了这些子工程,就可以导致整个工程的完成怎么表示子工程(活动)?一种是用节点表示活动另一种使用便表示活动AOV网:拓扑排序顶点表示活动,弧表示活动之间的优先制约关系称这种有向图为顶点表示活动的网,简称AOV网(Activity On Vertex network)AOE网:关键路径以弧表示活动,以节点表示活动的开始或结束事件,称为边表示活动的网,简称原创 2020-10-27 17:05:25 · 256 阅读 · 0 评论 -
7-10 旅游规划 (25分) (c++)
7-10 旅游规划 (25分)有了一张自驾旅游路线图,你会知道城市间的高速公路长度、以及该公路要收取的过路费。现在需要你写一个程序,帮助前来咨询的游客找一条出发地和目的地之间的最短路径。如果有若干条路径都是最短的,那么需要输出最便宜的一条路径。输入格式:输入说明:输入数据的第1行给出4个正整数N、M、S、D,其中N(2≤N≤500)是城市的个数,顺便假设城市的编号为0~(N−1);M是高速公路的条数;S是出发地的城市编号;D是目的地的城市编号。随后的M行中,每行给出一条高速公路的信息,分别是:城市1.原创 2020-10-23 20:05:13 · 1369 阅读 · 0 评论 -
huffman树PTA
2-7下列叙述错误的是()。(2分)A.一棵哈夫曼树的带权路径长度等于其中所有分支结点的权值之和B.当一棵具有n 个叶子结点的二叉树的WPL 值为最小时,称其树为哈夫曼树,其二叉树的形状是唯一的C.哈夫曼树是带权路径长度最短的树,路径上权值较大的结点离根较近D.哈夫曼树的结点个数不能是偶数...原创 2020-10-18 10:42:11 · 1583 阅读 · 7 评论