数据结构作业
forever-4132
这个作者很懒,什么都没留下…
展开
-
数据结构作业3-4(周)问题F:Turn off the light(关下灯)
题目描述There are n lights aligned in a row. These lights are numbered 1 to n from left to right.Initially some of the lights are turned on. Chiaki would like to turn off all the lights.Chiaki starts from the p-th light. Each time she can go left or right (原创 2020-06-10 18:19:43 · 804 阅读 · 1 评论 -
数据结构作业3-4(周)问题E:最短路
题目描述给一张无向图G(U, E), 询问任意两点的最短距离。输入第一行两个整数n,m表示图中结点数和边的数量, 结点从1到n编号。接下来m行,每行三个整数u,v,w表示u,v之间有一条距离为w的边。接下来一行一个整数q,表示询问次数。接下来q行每行两个整数u,v,表示询问u到v的最短距离, 如果u不能到达v输出-1。 数据范围:n <= 100, m <= 5000, q <= 10000, 0 < w <= 1000。输出对应输出q行答案。样例输入5原创 2020-06-08 18:01:34 · 942 阅读 · 0 评论 -
数据结构作业3-4(周)问题D:二叉树问题
题目描述现给定一棵二叉树的先序遍历序列和中序遍历序列,要求你计算该二叉树的高度。输入输入包含多组测试数据,每组输入首先给出正整数N(<=50),为树中结点总数。下面2行先后给出先序和中序遍历序列,均是长度为N的不包含重复英文字母(区别大小写)的字符串。输出对于每组输入,输出一个整数,即该二叉树的高度。样例输入9ABDFGHIECFDHGIBEAC7AbcdefggfedcbA样例输出57我的Tips:我本来以为还是真的创建个树去做,结果发现了某位大大更加厉害原创 2020-06-07 10:41:53 · 735 阅读 · 2 评论 -
数据结构作业3-4(周)问题 C: 算法10-2——折半插入排序
题目描述折半插入排序同样是一种非常简单的排序方法它的基本操作是在一个已经排好序的有序表中进行查找和插入。不难发现这个查找的过程可以十分自然的修改成折半查找的方式进行实现。 折半插入排序的算法可以描述如下:在本题中,读入一串整数,将其使用以上描述的折半插入排序的方法从小到大排序,并输出。输入输入的第一行包含1个正整数n,表示共有n个整数需要参与排序。其中n不超过1000。第二行包含n个用空格隔开的正整数,表示n个需要排序的整数。输出只有1行,包含n个整数,表示从小到大排序完毕的所有整数原创 2020-06-06 21:06:09 · 1701 阅读 · 0 评论 -
数据结构作业3-4(周)问题B:哈夫曼树
题目描述哈夫曼树,第一行输入一个数n,表示叶结点的个数。需要用这些叶结点生成哈夫曼树,根据哈夫曼树的概念,这些结点有权值,即weight,题目需要输出所有结点的值与权值的乘积之和。输入输入有多组数据。每组第一行输入一个数n,接着输入n个叶节点(叶节点权值不超过100,2<=n<=1000)。输出输出权值。样例输入22 8 35 11 30 样例输出1062本题我综合了许多人的讲述和方法,一些相关知识(含链接)也列在了文章里面,也是对自个CPP知识的补充原创 2020-06-06 18:51:09 · 1951 阅读 · 1 评论 -
数据结构实验1-2(周)问题G:奥运排序问题
题目描述按要求,给国家进行排名。输入有多组数据。第一行给出国家数N,要求排名的国家数M,国家号从0到N-1。第二行开始的N行给定国家或地区的奥运金牌数,奖牌数,人口数(百万)。接下来一行给出M个国家号。输出排序有4种方式: 金牌总数 奖牌总数 金牌人口比例 奖牌人口比例 对每个国家给出最佳排名排名方式 和 最终排名格式为: 排名:排名方式如果有相同的最终排名,则输出排名方式最小的那种排名,对于排名方式,金牌总数 < 奖牌总数 < 金牌人口比例 < 奖牌原创 2020-06-05 22:24:01 · 811 阅读 · 1 评论 -
数据结构作业3-4(周)问题A:Hanoi双塔问题
题目描述给定A,B,C三根足够长的细柱,在A柱上放有2n个中间有空的圆盘,共有n个不同的尺寸,每个尺寸都有两个相同的圆盘,注意这两个圆盘是不加区分的(下图为n=3的情形)。现要将 这些国盘移到C柱上,在移动过程中可放在B柱上暂存。要求:(1)每次只能移动一个圆盘;(2) A、B、C三根细柱上的圆盘都要保持上小下大的顺序;任务:设An为2n个圆盘完成上述任务所需的最少移动次数,对于输入的n,输出An。输入输入文件hanoi.in为一个正整数n,表示在A柱上放有2n个圆盘。输出输出文件hano原创 2020-06-05 20:49:06 · 2306 阅读 · 4 评论