
swustoj
Yyx@
这个作者很懒,什么都没留下…
展开
-
哈夫曼译码 swustoj
哈夫曼译码 1000(ms) 10000(kb) 1570 / 3422通常要求根据给定的编码本对密文进行解码。现已给定相应字符的哈夫曼编码,要求根据编码对密文进行解码。(建立哈夫曼树以及编码、主函数等都已经给出,你只需要填写译码函数void ccode(haffnode hafftree[],int n)即可。const int maxvalue=100;const int maxbit=10...原创 2018-05-22 21:46:07 · 2771 阅读 · 1 评论 -
二叉排序树的实现和查找 swustoj
二叉排序树的实现和查找 1000(ms) 10000(kb) 2257 / 5150按照给定的关键字集合,建立二叉排序树。在建立的二叉排序树上查找指定的关键字,查找成功,输出找到该关键字比较的次数;查找不成功,输出-1.输入关键字个数n; 关键字集合; 要查找的关键字;输出查找成功输出比较的次数,否则输出-1。样例输入1225 18 46 2 53 39 32 4 74 67 60 117...原创 2018-04-25 16:28:01 · 1014 阅读 · 0 评论 -
输出利用先序遍历创建的二叉树的后序遍历序列 swustoj
输出利用先序遍历创建的二叉树的后序遍历序列 1000(ms) 10000(kb) 2473 / 3692利用先序递归遍历算法创建二叉树并输出该二叉树的后序遍历序列。先序递归遍历建立二叉树的方法为:按照先序递归遍历的思想将对二叉树结点的抽象访问具体化为根据接收的数据决定是否产生该结点从而实现创建该二叉树的二叉链表存储结构。约定二叉树结点数据为单个大写英文字符。当接收的数据是字符"#"时表示该结点不需...原创 2018-04-21 17:02:14 · 1346 阅读 · 0 评论 -
输出利用先序遍历创建的二叉树的中序遍历序列 swustoj
输出利用先序遍历创建的二叉树的中序遍历序列 1000(ms) 10000(kb) 2661 / 4294利用先序递归遍历算法创建二叉树并输出该二叉树的中序遍历序列。先序递归遍历建立二叉树的方法为:按照先序递归遍历的思想将对二叉树结点的抽象访问具体化为根据接收的数据决定是否产生该结点从而实现创建该二叉树的二叉链表存储结构。约定二叉树结点数据为单个大写英文字符。当接收的数据是字符"#"时表示该结点不需...原创 2018-04-21 16:35:08 · 3667 阅读 · 1 评论 -
统计利用先序遍历创建的二叉树中的空链域个数 swustoj
统计利用先序遍历创建的二叉树中的空链域个数 1000(ms) 10000(kb) 2497 / 4025利用先序递归遍历算法创建二叉树并计算该二叉树中的空链域个数。先序递归遍历建立二叉树的方法为:按照先序递归遍历的思想将对二叉树结点的抽象访问具体化为根据接收的数据决定是否产生该结点从而实现创建该二叉树的二叉链表存储结构。约定二叉树结点数据为单个大写英文字符。当接收的数据是字符"#"时表示该结点不需...原创 2018-04-21 16:20:13 · 1301 阅读 · 0 评论 -
统计利用先序遍历创建的二叉树的度为1的结点个数 swustoj
统计利用先序遍历创建的二叉树的度为1的结点个数 1000(ms) 10000(kb) 2501 / 4135利用先序递归遍历算法创建二叉树并计算该二叉树度为1结点的个数。先序递归遍历建立二叉树的方法为:按照先序递归遍历的思想将对二叉树结点的抽象访问具体化为根据接收的数据决定是否产生该结点从而实现创建该二叉树的二叉链表存储结构。约定二叉树结点数据为单个大写英文字符。当接收的数据是字符"#"时表示该结...原创 2018-04-21 14:00:58 · 3810 阅读 · 0 评论 -
输出用先序遍历创建的二叉树是否为完全二叉树的判定结果 swustoj
输出用先序遍历创建的二叉树是否为完全二叉树的判定结果 1000(ms) 10000(kb) 2007 / 4239利用先序递归遍历算法创建二叉树并判断该二叉树是否为完全二叉树。完全二叉树只能是同深度的满二叉树缺少最后一层倒数连续个叶子结点。先序递归遍历建立二叉树的方法为:按照先序递归遍历的思想将对二叉树结点的抽象访问具体化为根据接收的数据决定是否产生该结点从而实现创建该二叉树的二叉链表存储结构。约...原创 2018-04-25 09:39:29 · 1980 阅读 · 2 评论 -
折半查找的实现 swustoj
折半查找的实现 1000(ms) 10000(kb) 2334 / 9041编写程序实现折半查找算法。输入第一行是查找表的长度n第二行是查找表中的数据元素 ;第三行是要查找的数据元素的关键字.输出查找成功返回位序,不成功返回-1 ,第二行为比较的次数。样例输入115 13 19 21 37 56 64 75 80 88 92100样例输出-14#include<iostream&g...原创 2018-04-25 09:24:00 · 1009 阅读 · 0 评论 -
一元多项式加法运算的实现 swustoj
一元多项式加法运算的实现 10000(ms) 10000(kb) 2093 / 5095编程实现一元多项式的加法运算。(要求用链表实现)输入第一个一元多项式A; 第二个一元多项式B。 以(0,0)作为输入结束。输出多项式A和多项式B的和。样例输入5,3 7,8 9,15 0,02,0 6,3 -7,8 0,0样例输出2x^0+11x^3+9x^15结构体数组:#include<iostre...原创 2018-04-20 19:36:25 · 1321 阅读 · 0 评论 -
利用二叉树中序及先序遍历确定该二叉树的后序序列 swustoj
利用二叉树中序及先序遍历确定该二叉树的后序序列 1000(ms) 10000(kb) 2182 / 4615已知二叉树的中序和先序遍历可以唯一确定后序遍历、已知中序和后序遍历可以唯一确定先序遍历,但已知先序和后序,却不一定能唯一确定中序遍历。现要求根据输入的中序遍历结果及先序遍历结果,要求输出其后序遍历结果。输入输入数据占2行,其中第一行表示中序遍历结果,第二行为先序遍历结果。输出对测试数据,输出...原创 2018-04-24 20:16:38 · 806 阅读 · 0 评论 -
统计利用先序遍历创建的二叉树的度为2的结点个数 swustoj
统计利用先序遍历创建的二叉树的度为2的结点个数 1000(ms) 10000(kb) 2468 / 4526利用先序递归遍历算法创建二叉树并计算该二叉树度为2结点的个数。先序递归遍历建立二叉树的方法为:按照先序递归遍历的思想将对二叉树结点的抽象访问具体化为根据接收的数据决定是否产生该结点从而实现创建该二叉树的二叉链表存储结构。约定二叉树结点数据为单个大写英文字符。当接收的数据是字符"#"时表示该结...原创 2018-04-20 15:42:48 · 1828 阅读 · 0 评论 -
统计利用先序遍历创建的二叉树叶结点的个数 swustoj
统计利用先序遍历创建的二叉树叶结点的个数 1000(ms) 10000(kb) 2734 / 5021利用先序递归遍历算法创建二叉树并计算该二叉树叶结点的个数。先序递归遍历建立二叉树的方法为:按照先序递归遍历的思想将对二叉树结点的抽象访问具体化为根据接收的数据决定是否产生该结点从而实现创建该二叉树的二叉链表存储结构。约定二叉树结点数据为单个大写英文字符。当接收的数据是字符"#"时表示该结点不需要创...原创 2018-04-20 15:29:36 · 1459 阅读 · 0 评论 -
舞伴问题 swustoj
舞伴问题 1000(ms) 10000(kb) 2103 / 5049假设在周末舞会上,男士们和女士们进入舞厅时,各自排成一队。跳舞开始时,依次从男队和女队的队头上各出一人配成舞伴。若两队初始人数不相同,则较长的那一队中未配对者等待下一轮舞曲。要求编写程序实现舞伴问题。输入输入一共5行,第一行是男生人数m;第二行依次是男生的姓名;第三行是女士的人数n;第四行依次是女士的姓名;第五行是跳舞...原创 2018-04-21 19:27:53 · 819 阅读 · 1 评论 -
特定字符序列的判断 swustoj
特定字符序列的判断 1000(ms) 10000(kb) 2125 / 4929编写一程序,识别依次读入的一个以“#”为结束符的字符序列是否为形如“序列1@序列2”模式的字符序列。期中序列1和序列2中都不含字符“@”,且序列2是序列1的逆序列。例如“a+b@b+a”是满足条件的序列字符,而“1+3@3-1”则不是。输入一个以“#”结束的字符序列。输出是满足条件的字符序列输出“yes!”;否则输出“...原创 2018-04-21 20:01:06 · 571 阅读 · 0 评论 -
哈希表(开放定址法处理冲突)
哈希表(开放定址法处理冲突) 1000(ms) 10000(kb) 2237 / 5318采用除留余数法(H(key)=key %n)建立长度为n的哈希表,处理冲突用开放定址法的线性探测。输入第一行为哈希表的长度n; 第二行为关键字的个数; 第三行为关键字集合; 第三行为要查找的数据。输出如果查找成功,输出关键字所哈希表中的地址和比较次数;如果查找不成功,输出-1。样例输入131116 74 ...原创 2018-05-14 14:15:45 · 1910 阅读 · 0 评论 -
哈希表(链地址法处理冲突)
哈希表(链地址法处理冲突) 1000(ms) 10000(kb) 2081 / 5478采用除留余数法(H(key)=key %n)建立长度为n的哈希表,处理冲突用链地址法。建立链表的时候采用尾插法。输入第一行为哈西表的长度m;第二行为关键字的个数n; 第三行为关键字集合; 第四行为要查找的数据。输出如果查找成功,输出该关键字所在哈希表中的地址和比较次数;...原创 2018-05-14 13:43:31 · 8780 阅读 · 1 评论 -
有向图的邻接矩阵存储根计算 swustoj
有向图的邻接矩阵存储根计算 5000(ms) 10000(kb) 1744 / 2878Tags: 有向图若有向图中存在一个顶点v,从v可以通过路径到达图中其他所有顶点,那么称v为该有向图的根。假设图G采用邻接矩阵存储,求有向图的所有根。输入第一行为一个整数n,表示顶点的个数(顶点编号为0到n-1),接下来是为一个n*n大小的整数矩阵,表示图的邻接关系。输出有向图的所有根。样例输入50 1 0 ...原创 2018-05-05 16:07:29 · 786 阅读 · 0 评论 -
判断给定有向图是否存在回路 swustoj
判断给定有向图是否存在回路 1000(ms) 10000(kb) 1465 / 3415Tags: 图判断给定有向图是否存在回路。输入第一行为图中顶点的个数n; 第二行为途中弧度条数e;第二行为顶点信息;接着e行为e条弧依附的两个顶点。输出该图是否存在回路,是输出yes;,不是输出no。样例输入44A B C DA BA CB DC D样例输出no#include<iostre...原创 2018-05-05 16:05:38 · 3473 阅读 · 0 评论 -
图的按录入顺序广度优先搜索 swustoj
图的按录入顺序广度优先搜索 5000(ms) 10000(kb) 1843 / 3904Tags: 广度优先图的广度优先搜索类似于树的按层次遍历,即从某个结点开始,先访问该结点,然后访问该结点的所有邻接点,再依次访问各邻接点的邻接点。如此进行下去,直到所有的结点都访问为止。在该题中,假定所有的结点以“A”--“Z”中的若干字符表示,且要求结点的访问顺序根据录入的顺序进行访问。如果结点录入的顺序为H...原创 2018-05-04 19:43:15 · 996 阅读 · 0 评论 -
输出利用先序遍历创建的二叉树中的指定结点的度 swustoj
输出利用先序遍历创建的二叉树中的指定结点的度 1000(ms) 10000(kb) 1786 / 6130利用先序递归遍历算法创建二叉树并输出该二叉树中指定结点的度。约定二叉树结点数据为单个大写英文字符。当接收的数据是字符“#”时表示该结点不需要创建,否则创建该结点。最后再输出创建完成的二叉树中的指定结点的度。注意输入数据序列中的字符“#”和非“#”字符的序列及个数关系,这会最终决定创建的二叉树的...原创 2018-04-26 20:18:41 · 680 阅读 · 0 评论 -
图的按录入顺序深度优先搜索 swustoj
图的按录入顺序深度优先搜索 5000(ms) 10000(kb) 1786 / 3307Tags: 深度优先图的深度优先搜索类似于树的先根遍历,即从某个结点开始,先访问该结点,然后深度访问该结点的第一棵子树,依次为第二顶子树。如此进行下去,直到所有的结点都访问为止。在该题中,假定所有的结点以“A”至“Z”中的若干字符表示,且要求结点的访问顺序根据录入的顺序进行访问。如果结点录入的顺序为HUEAK,...原创 2018-05-04 17:09:08 · 787 阅读 · 0 评论 -
输出利用先序遍历创建的二叉树中的指定结点的双亲结点 swustoj
输出利用先序遍历创建的二叉树中的指定结点的双亲结点 1000(ms) 10000(kb) 1893 / 4540利用先序递归遍历算法创建二叉树并输出该二叉树中指定结点的双亲结点。约定二叉树结点数据为单个大写英文字符。当接收的数据是字符“#”时表示该结点不需要创建,否则创建该结点。最后再输出创建完成的二叉树中的指定结点的双亲结点。注意输入数据序列中的“#”字符和非“#”字符的序列及个数关系,这会最终...原创 2018-04-26 16:56:39 · 2017 阅读 · 0 评论 -
输出利用先序遍历创建的二叉树中的指定结点的孩子结点 swustoj
输出利用先序遍历创建的二叉树中的指定结点的孩子结点 1000(ms) 10000(kb) 1907 / 4271利用先序递归遍历算法创建二叉树并输出该二叉树中指定结点的儿子结点。约定二叉树结点数据为单个大写英文字符。当接收的数据是字符"#"时表示该结点不需要创建,否则创建该结点。最后再输出创建完成的二叉树中的指定结点的儿子结点。注意输入数据序列中的"#"字符和非"#"字符的序列及个数关系,这会最终...原创 2018-04-26 16:22:48 · 1328 阅读 · 0 评论 -
堆排序算法 swustoj
堆排序算法 1000(ms) 10000(kb) 2110 / 4707编写程序堆排序算法。按照非递减排序,测试数据为整数。输入第一行是待排序数据元素的个数; 第二行是待排序的数据元素。输出一趟堆排序的结果。样例输入1050 36 41 19 23 4 20 18 12 22样例输出4 12 20 18 22 41 50 36 19 23#include<iostream>#inc...原创 2018-04-26 15:14:53 · 853 阅读 · 0 评论 -
定位顺序表中的最大和最小值 swustoj
定位顺序表中的最大和最小值 1000(ms) 10000(kb) 2510 / 11216建立长度为n的顺序表,在表中找出最大值和最小值元素所在的位置。输入第一行为顺序表的长度n;第二行为顺序表中的数据元素;输出第一行为最大值的位置;第二行为最小值的位置。样例输入71 2 3 4 5 6 7样例输出Lmax=6Lmin=0include<iostream>using name...原创 2018-04-21 20:40:05 · 2708 阅读 · 0 评论 -
统计利用先序遍历创建的二叉树的宽度 swustoj
统计利用先序遍历创建的二叉树的宽度 1000(ms) 10000(kb) 2427 / 5729利用先序递归遍历算法创建二叉树并计算该二叉树的宽度。先序递归遍历建立二叉树的方法为:按照先序递归遍历的思想将对二叉树结点的抽象访问具体化为根据接收的数据决定是否产生该结点从而实现创建该二叉树的二叉链表存储结构。约定二叉树结点数据为单个大写英文字符。当接收的数据是字符"#"时表示该结点不需要创建,否则创建...原创 2018-04-20 15:13:50 · 1032 阅读 · 0 评论 -
利用二叉树中序及后序遍历确定该二叉树的先序序列 swustoj
利用二叉树中序及后序遍历确定该二叉树的先序序列 1000(ms) 10000(kb) 2036 / 3818已知二叉树的中序和先序遍历可以唯一确定后序遍历、已知中序和后序遍历可以唯一确定先序遍历,但已知先序和后序,却不一定能唯一确定中序遍历。现要求根据输入的中序遍历结果及后序遍历结果,要求输出其先序遍历结果。输入第一行为中序序列 第二行为后续序列输出输出为遍历二叉树得到的先序序列样例输入BFDA...原创 2018-04-24 19:39:32 · 1009 阅读 · 0 评论 -
统计利用先序遍历创建的二叉树的深度
统计利用先序遍历创建的二叉树的深度 10000(ms) 10000(kb) 2768 / 6970利用先序递归遍历算法创建二叉树并计算该二叉树的深度。先序递归遍历建立二叉树的方法为:按照先序递归遍历的思想将对二叉树结点的抽象访问具体化为根据接收的数据决定是否产生该结点从而实现创建该二叉树的二叉链表存储结构。约定二叉树结点数据为单个大写英文字符。当接收的数据是字符"#"时表示该结点不需要创建,否则创...原创 2018-04-19 21:53:20 · 1176 阅读 · 2 评论 -
逆置单链表 swustoj
逆置单链表 1000(ms) 65535(kb) 2666 / 6788建立长度为n的单链表,然后将其数据元素逆置,即第1个元素变为最后一个元素,第2个元素变为倒数第2个元素,以此类推,最后一个元素变为第1个元素。(处理的数据类型为字符型。必须使用链表完成。)输入第一行为链表长度n; 第二行为链表中的n个数据元素的值。输出逆置后的原始的值。样例输入10ABCDEFGHIJ样例输出J I H ...原创 2018-04-18 13:35:15 · 1118 阅读 · 1 评论 -
约瑟夫问题的实现 swustoj
约瑟夫问题的实现 2000(ms) 65535(kb) 2662 / 8037n个人围成一个圈,每个人分别标注为1、2、...、n,要求从1号从1开始报数,报到k的人出圈,接着下一个人又从1开始报数,如此循环,直到只剩最后一个人时,该人即为胜利者。例如当n=10,k=4时,依次出列的人分别为4、8、2、7、3、10,9、1、6、5,则5号位置的人为胜利者。给定n个人,请你编程计算出最后胜利者标号数...原创 2018-04-18 13:20:15 · 787 阅读 · 0 评论 -
顺序表上数据的划分问题的实现 swustoj
顺序表上数据的划分问题的实现 1000(ms) 10000(kb) 2073 / 4253建立一个顺序表L,然后以第一个为分界,将所有小于等于它的元素移到该元素的前面,将所有大于它的元素移到该元素的后面。输入顺序表长度n;顺序表中的数据元素。输出移动后的数据元素。样例输入1032 5 22 43 23 56 54 57 11 25样例输出25 11 23 22 5 32 43 56 54 57...原创 2018-04-22 09:39:57 · 903 阅读 · 0 评论 -
利用栈完成后缀表达式的计算 swust oj
利用栈完成后缀表达式的计算 1000(ms) 10000(kb) 2114 / 4163后缀表达式不包含括号,运算符放在两个运算对象的后面,所有的计算按运算符出现的顺序,严格从左向右进行(不再考虑运算符的优先规则,如:(2 + 1) * 3 , 即2 1 + 3 *。利用栈结构,将后缀表达式的结果计算出来。输入后缀表达式。以#号作为表达式结束标志。为了简单,处理的数据为0-9的整数。输出计算结果。...原创 2018-04-22 08:33:42 · 658 阅读 · 0 评论 -
寻找整数序列的主元素 swustoj
寻找整数序列的主元素 1000(ms) 10000(kb) 2391 / 5680已知一个整数序列A=(a0,a1,…an),如果其中有一个元素的出现次数超过n/2,就称该元素为A的主元素,否则就称整数序列没有主元素。例如A=(0,5,5,3,5,7,5,5),则5为主元素。A=(0,5,5,3,5,1,5,7),则A中没有主元素。要求编写程序实现寻找给定整数序列的主元素,如果找到,则输出主元素。...原创 2018-04-22 07:49:56 · 3064 阅读 · 2 评论 -
单链表上查找算法的实现 swustoj
单链表上查找算法的实现 1000(ms) 65535(kb) 2713 / 7242建立一个长度为n的带头结点的单链表,在该表中寻找第i个结点,若找到,则输出ok,否则输出error。处理数据类型为整型。输入第一行为链表的长度n; 第二行为链表中的数据元素;第三行为要找的结点i。输出找到就输出ok,没找到就输出error。样例输入101 2 3 4 5 6 7 8 9 105样例输出ok...原创 2018-04-18 08:49:11 · 725 阅读 · 0 评论 -
单链表的链接 swust oj
单链表的链接 1000(ms) 65535(kb) 2923 / 9780建立长度为n的单链表A和长度为m的单链表B。编程实现将B表链接在A表的尾端,形成一个单链表A。数据类型指定为字符型。输入第一行为A表的长度n; 第二行为A表中的数据元素;第三行为B表的长度m; 第四行为B表中的数据元素。输出输出为链接好后的A表中的所有数据元素。样例输入4A B C D 61 2 3 4 5 6...原创 2018-04-18 08:33:35 · 727 阅读 · 0 评论 -
单链表的删除操作的实现 swust oj
单链表的删除操作的实现 1000(ms) 65535(kb) 2769 / 13056建立长度为n的单链表,删除第i个结点之前的结点。输入第一行为自然数n,表示链式线性表的长度;第二行为n个自然数表示链式线性表各元素值;第三行为指定的删除参数i。输出指定删除位置合法时候,输出删除元素后的链式线性表的所有元素,元素之间用一个空格隔开。输入不合法,输出"error!"。样例输入51 2 3 ...原创 2018-04-18 08:19:52 · 664 阅读 · 0 评论 -
顺序表插入操作的实现 swustoj
顺序表插入操作的实现 1000(ms) 10000(kb) 2971 / 13413建立长度为n的顺序表,在指定的数据元素item之前插入数据元素data。如果指定的数据元素item不存在,则将data插入到顺序表的尾端。(数据类型为整型)输入第一行为顺序表的长度n;第二行为顺序表中的数据元素;第三行为指定的数据元素item;第四行为要插入的数据元素data;输出输出结果为顺序表中的数据元素...原创 2018-04-17 22:50:00 · 1589 阅读 · 0 评论 -
逆置顺序表 swustoj
逆置顺序表 1000(ms) 10000(kb) 2998 / 14593建立长度为n的顺序表,然后将表中的数据元素逆置,即若表中原来的数据元素序列为(a0,a1,a2,…,an),则逆置后的数据元素序列为(an,an-1,an-2,…,a1,a0)。(数据类型为字符型)输入第一行为顺序表的长度n;第二行为顺序表中的数据元素.输出输出为逆置后的顺序表.样例输入7ABCDEFG样例输出G F...原创 2018-04-17 22:37:05 · 513 阅读 · 1 评论 -
有序顺序表的合并操作的实现 swustoj
有序顺序表的合并操作的实现 1000(ms) 10000(kb) 2638 / 13992已知两非递减的顺序线性表,要求合并成一个新的非递减顺序线性表。(测试数据为整型)输入输入包含四行,第一行为自然数n,表示第一个非递减顺序线性表的长度;第二行为n个自然数构成的非递减顺序线性表;第三行为自然数m,表示第二个非递减顺序线性表的长度;第四行为m个自然数构成的非递减顺序线性表。输出输出:用一行...原创 2018-04-17 22:19:51 · 879 阅读 · 0 评论 -
数细胞 964 swustoj
数细胞 1000(ms) 10000(kb) 2113 / 5369一矩形阵列由数字0到9组成,数字1到9代表细胞,细胞的定义为沿细胞数字上下左右还是细胞数字则为同一细胞,求给定矩形阵列的细胞个数。编程需要用到的队列及其相关函数已经实现,你只需要完成count函数以及主函数即可。输入第一行输入两个整数,分别代表矩阵的行和列 输入m*n的矩阵,由数字0到9组成。输出细胞个数。样例输入4 101 2...原创 2018-04-12 21:47:18 · 1886 阅读 · 1 评论