随笔分类 -  数据结构练习题

摘要:11-散列1 电话聊天狂人(25 分)给定大量手机用户通话记录,找出其中通话次数最多的聊天狂人。输入格式:输入首先给出正整数N(≤10​5​​),为通话记录条数。随后N行,每行给出一条通话记录。简单起见,这里只列出拨出方和接收方的11位数字构成的手机号码,其中以空格分... 阅读全文
posted @ 2018-06-05 17:11 focus5679 阅读(222) 评论(0) 推荐(0)
摘要:08-图7 公路村村通(30 分)现有村落间道路的统计数据表中,列出了有可能建设成标准公路的若干条道路的成本,求使每个村落都有公路连通所需要的最低成本。输入格式:输入数据包括城镇数目正整数N(≤1000)和候选道路数目M(≤3N);随后的M行对应M条道路,每行给出3个... 阅读全文
posted @ 2018-05-28 21:35 focus5679 阅读(146) 评论(0) 推荐(0)
摘要:07-图6 旅游规划(25 分)有了一张自驾旅游路线图,你会知道城市间的高速公路长度、以及该公路要收取的过路费。现在需要你写一个程序,帮助前来咨询的游客找一条出发地和目的地之间的最短路径。如果有若干条路径都是最短的,那么需要输出最便宜的一条路径。输入格式:输入说明:输... 阅读全文
posted @ 2018-05-26 18:12 focus5679 阅读(229) 评论(0) 推荐(0)
摘要:07-图5 Saving James Bond - Hard Version(30 分)This time let us consider the situation in the movie "Live and Let Die" in which James Bon... 阅读全文
posted @ 2018-05-26 11:00 focus5679 阅读(163) 评论(0) 推荐(0)
摘要: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 Bon... 阅读全文
posted @ 2018-05-24 21:57 focus5679 阅读(115) 评论(0) 推荐(0)
摘要:07-图4 哈利·波特的考试(25 分)哈利·波特要考试了,他需要你的帮助。这门课学的是用魔咒将一种动物变成另一种动物的本事。例如将猫变成老鼠的魔咒是haha,将老鼠变成鱼的魔咒是hehe等等。反方向变化的魔咒就是简单地将原来的魔咒倒过来念,例如ahah可以将老鼠变成... 阅读全文
posted @ 2018-05-24 21:28 focus5679 阅读(156) 评论(0) 推荐(0)
摘要:06-图1 列出连通集(25 分)给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集。假设顶点从0到N−1编号。进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序访问邻接点。输入格式:输入第1行给出2个整数N(0#include ... 阅读全文
posted @ 2018-05-17 22:20 focus5679 阅读(157) 评论(0) 推荐(0)
摘要:05-树8 File Transfer(25 分)We have a network of computers and a list of bi-directional connections. Each of these connections allows a f... 阅读全文
posted @ 2018-05-17 18:27 focus5679 阅读(105) 评论(0) 推荐(0)
摘要:05-树7 堆中的路径(25 分)将一系列给定数字插入一个初始为空的小顶堆H[]。随后对任意给定的下标i,打印从H[i]到根结点的路径。输入格式:每组测试第1行包含2个正整数N和M(≤1000),分别是插入元素的个数、以及需要打印的路径条数。下一行给出区间[-1000... 阅读全文
posted @ 2018-05-10 20:43 focus5679 阅读(149) 评论(0) 推荐(0)
摘要:04-树7 二叉搜索树的操作集(30 分)本题要求实现给定二叉搜索树的5种常用操作。函数接口定义:BinTree Insert( BinTree BST, ElementType X );BinTree Delete( BinTree BST, ElementType... 阅读全文
posted @ 2018-05-07 21:21 focus5679 阅读(119) 评论(0) 推荐(0)
摘要:04-树4 是否同一棵二叉搜索树(25 分)给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入... 阅读全文
posted @ 2018-05-07 14:52 focus5679 阅读(160) 评论(0) 推荐(0)
摘要:03-树2 List Leaves(25 分)Given a tree, you are supposed to list all the leaves in the order of top down, and left to right.Input Specifi... 阅读全文
posted @ 2018-05-01 21:54 focus5679 阅读(126) 评论(0) 推荐(0)
摘要:03-树1 树的同构(25 分)给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。图1图2现给定两... 阅读全文
posted @ 2018-05-01 19:47 focus5679 阅读(157) 评论(0) 推荐(0)
摘要:02-线性结构4 Pop Sequence(25 分)Given a stack which can keep M numbers at most. Push N numbers in the order of 1, 2, 3, ..., N and pop rand... 阅读全文
posted @ 2018-05-01 14:43 focus5679 阅读(134) 评论(0) 推荐(0)
摘要:02-线性结构1 两个有序链表序列的合并(15 分)本题要求实现一个函数,将两个链表表示的递增整数序列合并为一个非递减的整数序列。函数接口定义:List Merge( List L1, List L2 );其中List结构定义如下:typedef struct Nod... 阅读全文
posted @ 2018-05-01 13:32 focus5679 阅读(174) 评论(0) 推荐(0)
摘要:01-复杂度3 二分查找(20 分)本题要求实现二分查找算法。函数接口定义:Position BinarySearch( List L, ElementType X );其中List结构定义如下:typedef int Position;typedef struct ... 阅读全文
posted @ 2018-05-01 13:28 focus5679 阅读(320) 评论(0) 推荐(0)
摘要:02-线性结构2 一元多项式的乘法与加法运算(20 分)设计函数分别求两个一元多项式的乘积与和。输入格式:输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。输出格式:输出分... 阅读全文
posted @ 2018-05-01 13:28 focus5679 阅读(164) 评论(0) 推荐(0)
摘要:01-复杂度2 Maximum Subsequence Sum(25 分)Given a sequence of K integers { N​1​​, N​2​​, ..., N​K​​ }. A continuous subsequence is defined ... 阅读全文
posted @ 2018-05-01 13:26 focus5679 阅读(133) 评论(0) 推荐(0)
摘要:01-复杂度1 最大子列和问题(20 分)给定K个整数组成的序列{ N​1​​, N​2​​, ..., N​K​​ },“连续子列”被定义为{ N​i​​, N​i+1​​, ..., N​j​​ },其中 1≤i≤j≤K。“最大子列和”则被定义为所有连续子列元素的... 阅读全文
posted @ 2018-05-01 13:25 focus5679 阅读(128) 评论(0) 推荐(0)