PTA
文章平均质量分 82
夜ASK
目标跟踪
展开
-
11-散列2 Hashing (PTA)
11-散列2 Hashing (25分)The task of this problem is simple: insert a sequence of distinct positive integers into a hash table, and output the positions of the input numbers. The hash function is defined to be H(key)=key%TSize where TSize is the maximum size o原创 2020-05-18 15:04:11 · 358 阅读 · 0 评论 -
7-1 航空公司VIP客户查询(map)
7-1 航空公司VIP客户查询 (50分)不少航空公司都会提供优惠的会员服务,当某顾客飞行里程累积达到一定数量后,可以使用里程积分直接兑换奖励机票或奖励升舱等服务。现给定某航空公司全体会员的飞行记录,要求实现根据身份证号码快速查询会员里程积分的功能。输入格式:输入首先给出两个正整数N(≤105 )和K(≤500)。其中K是最低里程,即为照顾乘坐短程航班的会员,航空公司还会将航程低于K公里的航班也按K公里累积。随后N行,每行给出一条飞行记录。飞行记录的输入格式为:18位身份证号码(空格)飞行里程。原创 2020-05-14 19:50:03 · 946 阅读 · 0 评论 -
11-散列1 电话聊天狂人
11-散列1 电话聊天狂人 (25分)给定大量手机用户通话记录,找出其中通话次数最多的聊天狂人。输入格式:输入首先给出正整数N(≤10^5 ),为通话记录条数。随后N行,每行给出一条通话记录。简单起见,这里只列出拨出方和接收方的11位数字构成的手机号码,其中以空格分隔。输出格式:在一行中给出聊天狂人的手机号码及其通话次数,其间以空格分隔。如果这样的人不唯一,则输出狂人中最小的号码及其通话次数,并且附加给出并列狂人的人数。输入样例:413005711862 13588625832135原创 2020-05-14 19:49:18 · 128 阅读 · 0 评论 -
09-排序3 Insertion or Heap Sort(插入排序或堆排序)
09-排序3 Insertion or Heap Sort (25分)Insertion sort iterates, consuming one input element each repetition, and growing a sorted output list. Each iteration, insertion sort removes one element from the ...原创 2020-05-10 21:12:53 · 294 阅读 · 0 评论 -
10-排序6 Sort with Swap(0, i)(PTA)
10-排序6 Sort with Swap(0, i) (25分)Given any permutation of the numbers {0, 1, 2,…, N−1}, it is easy to sort them in increasing order. But what if Swap(0, ) is the ONLY operation that is allowed to use? For example, to sort {4, 0, 2, 1, 3} we may apply the原创 2020-05-10 21:12:25 · 285 阅读 · 3 评论 -
7-5 关键活动(逆 并 拓扑排序)
7-5 关键活动 (25分)假定一个工程项目由一组子任务构成,子任务之间有的可以并行执行,有的必须在完成了其它一些子任务后才能执行。“任务调度”包括一组子任务、以及每个子任务可以执行所依赖的子任务集。比如完成一个专业的所有课程学习和毕业设计可以看成一个本科生要完成的一项工程,各门课程可以看成是子任务。有些课程可以同时开设,比如英语和C程序设计,它们没有必须先修哪门的约束;有些课程则不可以同时开...原创 2020-05-07 09:27:57 · 580 阅读 · 0 评论 -
十大排序(一)
术语解释稳定排序:如果a原本在b的前面,且a==b,排序后a仍然在b前面,则为稳定排序非稳定排序:如果a原本在b的前面,且a==b,排序后a可能不再b的前面,则为非稳定排序原地排序:原地排序就是指在排序过程中不申请多余的存储空间,只利用原来存储待排数据的存储空间进行比较和交换的数据排序非原地排序:需要用额外的数组来辅助排序时间复杂度:一个算法执行所消耗的时间空间复杂度:运行完一个算法...转载 2020-05-07 09:27:41 · 129 阅读 · 0 评论 -
09-排序2 Insert or Merge(插入和归并)
09-排序2 Insert or Merge (25分)According to Wikipedia:根据维基百科:Insertion sort iterates, consuming one input element each repetition, and growing a sorted output list. Each iteration, insertion sort remo...原创 2020-05-07 09:26:42 · 309 阅读 · 0 评论 -
7-2 畅通工程之局部最小花费问题(prime)
7-2 畅通工程之局部最小花费问题 (25分)某地区经过对城镇交通状况的调查,得到现有城镇间快速道路的统计数据,并提出“畅通工程”的目标:使整个地区任何两个城镇间都可以实现快速交通(但不一定有直接的快速道路相连,只要互相间接通过快速路可达即可)。现得到城镇道路统计表,表中列出了任意两城镇间修建快速路的费用,以及该道路是否已经修通的状态。现请你编写程序,计算出全地区畅通需要的最低成本。输入格式:...原创 2020-05-07 09:25:48 · 617 阅读 · 0 评论 -
DFS和BFS的复杂度和其他习题
1.DFS时间复杂度DFS算法是一一个递归算法,需要借助一个递归工作栈,故它的空间复杂度为O(N)。遍历图的过程实质上是对每个顶点查找其邻接点的过程,其耗费的时间取决于所采用结构。邻接表表示时,查找所有顶点的邻接点所需时间为O(E),访问顶点的邻接点所花时间为O(N),此时,总的时间复杂度为O(N+E)。邻接矩阵表示时,查找每个顶点的邻接点所需时间为O(N),要查找整个矩阵,故...原创 2020-05-07 09:25:33 · 1485 阅读 · 0 评论 -
08-图8 How Long Does It Take(拓扑排序)
拓扑排序图中每个顶点只出现一次。A在B前面,则不存在B在A前面的路径。(不能成环!!!!)顶点的顺序是保证所有指向它的下个节点在被指节点前面!(例如A—>B—>C那么A一定在B前面,B一定在C前面)。所以,这个核心规则下只要满足即可,所以拓扑排序序列不一定唯一!计算各节点的入度,把所有为0的(也就是起点)放入栈中每次经过节点,节点的入度减一,入度为0入栈把每条路 入的...原创 2020-05-07 09:25:15 · 429 阅读 · 0 评论 -
08-图7 公路村村通(prime算法 | 点生成最小生成树)
普里姆(Prim)算法普里姆算法,图论中的一种算法,可在加权连通图里搜索最小生成树。意即此算法搜索到的边子集所构成的树中,不但包括连通图里的所有顶点,且其所有边的权值之和亦为最小。邻接矩阵实现的Prim算法的时间复杂度为O(n^2)。08-图7 公路村村通现有村落间道路的统计数据表中,列出了有可能建设成标准公路的若干条道路的成本,求使每个村落都有公路连通所需要的最低成本。输入格式:输入...原创 2020-05-07 09:25:03 · 421 阅读 · 0 评论 -
7-48 深入虎穴 (DFS,vector可变数组)
vector与stack的区别vector特点Vector本质上是一个可变数组在Vector创建之后,其size可以增加和减少线程安全的在非多线程的情况下建议使用ArrayListvector<int> b[100010];b[i].push_back(x);stack特点Stack继承自Vector,在其基础之上添加了一些入栈,出栈的操作,如push() |...原创 2020-05-07 09:24:42 · 217 阅读 · 0 评论 -
7-1 排座位(并查集算法)
查并集本来我看完题感觉挺简单的,但有一个小bug,只过了三个差一个,就去百度了,竟然还有一种算法能做这个题,然后就看了一下算法。看图,大概就这图片链接7-1 排座位 (10分)布置宴席最微妙的事情,就是给前来参宴的各位宾客安排座位。无论如何,总不能把两个死对头排到同一张宴会桌旁!这个艰巨任务现在就交给你,对任何一对客人,请编写程序告诉主人他们是否能被安排同席。输入格式:输入第一行给...原创 2020-05-07 09:23:55 · 1232 阅读 · 0 评论 -
07-图6 旅游规划(Dijkstra算法(单源最短路径算法))
Dijkstra算法“单源最短路径”问题,查找两点之间最短路径07-图6 旅游规划有了一张自驾旅游路线图,你会知道城市间的高速公路长度、以及该公路要收取的过路费。现在需要你写一个程序,帮助前来咨询的游客找一条出发地和目的地之间的最短路径。如果有若干条路径都是最短的,那么需要输出最便宜的一条路径。输入格式:输入说明:输入数据的第1行给出4个正整数N、M、S、D,其中N(2≤N≤500)是城...原创 2020-05-07 09:22:53 · 751 阅读 · 0 评论 -
07-图4 哈利·波特的考试(Floyd算法实现)
Floyd算法”多源最短路径“问题,查找不同点之间的最短路径。把图的信息放入二维数组中,采用可以看这篇文章07-图4 哈利·波特的考试 (25分)哈利·波特要考试了,他需要你的帮助。这门课学的是用魔咒将一种动物变成另一种动物的本事。例如将猫变成老鼠的魔咒是haha,将老鼠变成鱼的魔咒是hehe等等。反方向变化的魔咒就是简单地将原来的魔咒倒过来念,例如ahah可以将老鼠变成猫。另外,如果想把...原创 2020-05-07 09:22:39 · 179 阅读 · 0 评论 -
06-图3 六度空间
06-图3 六度空间 (30分)“六度空间”理论又称作“六度分隔(Six Degrees of Separation)”理论。这个理论可以通俗地阐述为:“你和任何一个陌生人之间所间隔的人不会超过六个,也就是说,最多通过五个人你就能够认识任何一个陌生人。”如图1所示。图1 六度空间示意图“六度空间”理论虽然得到广泛的认同,并且正在得到越来越多的应用。但是数十年来,试图验证这个理论始终是许多社...原创 2020-05-07 09:22:26 · 107 阅读 · 0 评论 -
06-图2 Saving James Bond - Easy Version
06-图2 Saving James Bond - Easy Version (25分)This time let us consider the situation in the movie “Live and Let Die” in which James Bond, the world’s most famous spy, was captured by a group of drug d...原创 2020-05-07 09:22:12 · 133 阅读 · 0 评论 -
06-图1 列出连通集
插话最近没怎么更新算法题了,主要在看图的视频,感觉比树难的多唉,前面树做的题也忘了一点。保持每天学习算法。:)06-图1 列出连通集 (25分)给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集。假设顶点从0到N−1编号。进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序访问邻接点。输入格式:输入第1行给出2个整数N(0<N≤10)和E,分别是...原创 2020-05-07 09:21:49 · 145 阅读 · 0 评论 -
7-4 Counting Leaves(
7-4树叶A family hierarchy is usually presented by a pedigree tree. Your job is to count those family members who have no child.家庭等级通常由谱系树表示。您的工作是计算没有孩子的家庭成员。Input Specification:The input consists of...原创 2020-05-07 09:21:38 · 232 阅读 · 0 评论 -
7-3 修理牧场(c++哈夫曼树实现)
7-3 修理牧场农夫要修理牧场的一段栅栏,他测量了栅栏,发现需要N块木头,每块木头长度为整数Li个长度单位,于是他购买了一条很长的、能锯成N块的木头,即该木头的长度是Li的总和。但是农夫自己没有锯子,请人锯木的酬金跟这段木头的长度成正比。为简单起见,不妨就设酬金等于所锯木头的长度。例如,要将长度为20的木头锯成长度为8、7和5的三段,第一次锯木头花费20,将木头锯成12和8;第二次锯木头花...原创 2020-05-07 09:21:24 · 1189 阅读 · 1 评论 -
05-树7 堆中的路径
堆的特点这个题需要了解数据结构堆的定义:逻辑上:完全二叉树物理上:数组堆的定义和性质将满足根的值小于等于所有子树结点的值,称为小堆;根的值大于等于所有子树结点的值称为大堆。堆的作用:找最值。4.练习(1){9,10,13,17,21,14,13,22} 小堆(2){10,8,3,8,8,2,1,7,6} 大堆(3){10,7,6,5,5,7,3,4,2} 既不是大堆也不是...原创 2020-05-07 09:20:55 · 320 阅读 · 0 评论 -
04-树4 是否同一棵二叉搜索树
04-树4 是否同一棵二叉搜索树给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你需要判断它们是否能生成一样的二叉搜索树。输入格式:输入包含若干组测试数据。每组数据的第1行给出两个正整数N (≤10)和L,分别是...原创 2020-05-07 09:20:38 · 117 阅读 · 0 评论 -
7-2 哈夫曼编码
7-2 哈夫曼编码给定一段文字,如果我们统计出字母出现的频率,是可以根据哈夫曼算法给出一套编码,使得用此编码压缩原文可以得到最短的编码总长。然而哈夫曼编码并不是唯一的。例如对字符串"aaaxuaxz",容易得到字母 ‘a’、‘x’、‘u’、‘z’ 的出现频率对应为 4、2、1、1。我们可以设计编码 {‘a’=0, ‘x’=10, ‘u’=110, ‘z’=111},也可以用另一套 {‘a’=1,...原创 2020-05-07 09:19:42 · 2334 阅读 · 0 评论 -
04-树5 AVL树的根
7-10 三元组顺序表表示的稀疏矩阵转置Ⅱ三元组顺序表表示的稀疏矩阵转置Ⅱ。设a和b为三元组顺序表变量,分别表示矩阵M和T。要求按照a中三元组的次序进行转置,并将转置后的三元组置入b中恰当的位置。输入格式:输入第1行为矩阵行数m、列数n及非零元素个数t。 按行优先顺序依次输入t行,每行3个数,分别表示非零元素的行标、列标和值。输出格式:按置入b中的顺序输出置入的位置下标,转置后的三元组行...原创 2020-05-07 09:19:09 · 255 阅读 · 0 评论 -
03-树3 Tree Traversals Again
03-树3 Tree Traversals AgainAn inorder binary tree traversal can be implemented in a non-recursive way with a stack. For example, suppose that when a 6-node binary tree (with the keys numbered from 1 ...原创 2020-05-07 09:18:55 · 790 阅读 · 0 评论 -
7-5 列车调度
火车站的列车调度铁轨的结构如下图所示。两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道。每趟列车从入口可以选择任意一条轨道进入,最后从出口离开。在图中有9趟列车,在入口处按照{8,4,2,5,3,9,1,6,7}的顺序排队等待进入。如果要求它们必须按序号递减的顺序从出口离开,则至少需要多少条平行铁轨用于调度?输入格式:输入第一行给出一个整数N ...原创 2020-05-07 09:18:41 · 713 阅读 · 0 评论 -
02-线性结构1 两个有序链表序列的合并
本题要求实现一个函数,将两个链表表示的递增整数序列合并为一个非递减的整数序列。函数接口定义:List Merge( List L1, List L2 );其中List结构定义如下:typedef struct Node *PtrToNode;struct Node { ElementType Data; /* 存储结点数据 */ PtrToNode Next; /*...原创 2020-05-07 09:18:23 · 102 阅读 · 0 评论 -
7-1 最大子列和问题
7-1 最大子列和问题给定K个整数组成的序列{ N1 , N2 , …, NK },“连续子列”被定义为{ Ni , Ni+1 , …, Nj },其中 1≤i≤j≤K。“最大子列和”则被定义为所有连续子列元素的和中最大者。例如给定序列{ -2, 11, -4, 13, -5, -2 },其连续子列{ 11, -4, 13 }有最大的和20。现要求你编写程序...原创 2020-05-07 09:17:55 · 1275 阅读 · 0 评论