随笔分类 - java实训平台(软件学院)
1
摘要:题目: 哈夫曼编码大全 描述: 关于哈夫曼树的建立,编码,解码。 输入 第一行输入数字N,代表总共有多少个字符以及权值 第二第三行分别是一行字符串,以及每个字符对应的权值 接下来输入一个数M,表示接下来有M行字符串,要求你对每个字符串进行编码 再输入一个数X,表示接下来有X行编码,要求你对每行编码进
阅读全文
摘要:二叉排序树的插入删除和查找 pre: 前序遍历 in: 中序遍历 post:后序遍历 insert: 插入,本题中不会出现相同的元素 delete: 删除,删除成功输出TRUE,没有该元素则输出FALSE,删除的方法是如果有左子树,以左子树中最大值作为新的树根,否则,以右子树最小值作为树根。 sea
阅读全文
摘要:构造哈夫曼树 题目描述: 根据给定的叶结点字符及其对应的权值创建哈夫曼树。 输入: 第一行为叶子结点的数目n(1<=n<=100)。第二行为一个字符串,包含n个字符,每个字符对应一个叶子结点,第三行为每个叶子结点的概率(即权值),要求根据各叶结点构造哈夫曼树。构造哈夫曼树的原则是先两个最小的,构造一
阅读全文
摘要:链式二叉树的创建及遍历 描述: 树的遍历有先序遍历、中序遍历和后序遍历。先序遍历的操作定义是先访问根结点,然后访问左子树,最后访问右子树。中序遍历的操作定义是先访问左子树,然后访问根,最后访问右子树。后序遍历的操作定义是先访问左子树,然后访问右子树,最后访问根。对于采用链式存储结构的二叉树操作中,创
阅读全文
摘要:图的深度优先搜索 描述: 图的深度优先搜索类似于树的先根遍历,是树的先根遍历的推广。即从某个结点开始,先访问该结点,然后深度访问该结点的第一棵子树,依次为第二顶子树。如此进行下去,直到所有的结点都访问为止。在该题中,假定所有的结点以“A”至“Z”中的若干字符表示,且要求结点的访问顺序根据“A”至“Z
阅读全文
摘要:数制转换 标准输入输出 题目描述: 数制转换。(要求采用栈实现,练习进栈入栈函数的编写) 输入: 输入的第一行包含两个数,n,d n表示要转换的数的个数 d表示要转换成的进制数 接下来是n个十进制数 输出: 对每一测试用例,用一行输出数制转换后的结果 输入样例: 2 8 123 213 输出样例:
阅读全文
摘要:希尔排序 描述 利用希尔排序算法实现线性表的排序。希尔排序是根据给定的增量序列将线性表分隔成某个“增量”的记录组成一个子序例,在子序列中采用直接插入排序完成。 输入 第一行为元素个数n(1<=n<=1000),第二行为n个元素值(整数),即需要排序的元素个数,第三行增量序列中增量个数m,第四行为m个
阅读全文
摘要:括号匹配的检验 标准输入输出 题目描述: 采用栈实现,练习进栈入栈函数的编写. 输入: 输入的第一行包含一个数,n n表示要用例的个数 接下来是n行由括号构成的字符串,包含‘(’、‘)’、‘[’、‘]’。 输出: 对每一测试用例,用一行输出结果,如果匹配,输出“YES”,否则输出“NO” 输入样例:
阅读全文
摘要:折半查找 标准输入输出 题目描述: 实现折半查找。要求查找给定的值在数据表中相应的存储位置。本题目假定输入元素均按非降序输入。 输入: 输入包含若干个测试用例,第一行为测试用例个数k。每个测试用例占3行,其中第一行为元素个数n,第二行为n个元素值,即数据表中的元素,第三行为需要查找的元素。 输出:
阅读全文
摘要:最短路径 描述: 已知一个城市的交通路线,经常要求从某一点出发到各地方的最短路径。例如有如下交通图: 则从A出发到各点的最短路径分别为: B:0 C:10 D:50 E:30 F:60 输入: 输入只有一个用例,第一行包括若干个字符,分别表示各顶点的名称,接下来是一个非负的整数方阵,方阵维数等于顶点
阅读全文
摘要:直接插入排序 描述 利用直接插入排序算法实现线性表的排序。要求输出第k趟排序的结果。例如原来线性表为:26,12,25,4,36,15,21,第一趟直接排序排序结果为: 12, 26,25,4,36,15,21,第二趟直接插入排序结果为: 12,25, 26,4,36,15,21。 输入 第一个为元
阅读全文
摘要:三元组的快速转置 标准输入输出 题目描述: 使用快速转置算法实验三元组的转置。 输入: 输入包含若干个测试用例,每个测试用例第一行为两个正整数m,n表示稀疏矩阵的行数和列数,接下来m行,每行n个整数,表示稀疏矩阵元素。要求采用三元组存储,并使用普通转置方法实验三元组的逆置。 输出: 对每一测试用例,
阅读全文
摘要:稀疏矩阵的操作 标准输入输出 题目描述: 稀疏矩阵可以采用三元组存储。 输入: 输入包含若干个测试用例,每个测试用例的第一行为两个正整数m,n(1<=m,n<=100),表示矩阵的行数和列数,接下来m行,每行n个整数,表示稀疏矩阵的元素,要求输出三元组存储表示。(0不存储) 输出: 对每一测试用例,
阅读全文
摘要:顺序查找 题目描述: 实现顺序查找。要求查找给定的值在数据表中相应的存储位置。本题目假定所有的元素互不相同,并且要求查找顺序为从后往前查询。 输入: 输入包含若干个测试用例,第一行为测试用例个数k。每个测试用例占3行,其中第一行为元素个数n,第二行为n个元素值,即数据表中的元素,第三行为需要查找的元
阅读全文
摘要:图的广度优先搜索 描述: 图的广度优先搜索类似于树的按层次遍历,即从某个结点开始,先访问该结点,然后访问该结点的所有邻接点,再依次访问各邻接点的邻接点。如此进行下去,直到所有的结点都访问为止。在该题中,假定所有的结点以“A”–“Z”中的若干字符表示,且要求结点的访问顺序要求根据由“A”至“Z”的字典
阅读全文
摘要:链式线性表的插入与删除 描述:删除链式线性表指定位置的元素。 输入:第一行为自然数n,表示链式线性表的长度,第二行为n个自然数表示链式线性表各元素值。第三行为指定删除的位置,第四行为插入的位置及元素值(如果位置不对,则不作操作,插入位置应在删除元素后重新计数)。 输出:输出删除与插入元素后的链式线性
阅读全文
摘要:循环队列 标准输入输出 题目描述: 根据给定的空间构造顺序循环队列,规定队满处理方法为少用一个元素空间。例如,给定5个元素空间构造循环队列,则只能存放4个元素。试根据入队及出队操作判断队列最后的元素存放情况,并输出最后队列中的元素值,即完成给定入队及出列操作后一次性全部出队的元素值。要求采用顺序队列
阅读全文
摘要:对称矩阵存储 标准输入输出 题目描述: 对于对称矩阵的存储,可以只存储下三角中的元素。对于给定的对称矩阵,要求进行压缩存储。 输入: 输入包括若干个测试用例,对于每一个测试用例,第一行为一个正整数n(1<=n<=100)表示方阵的维数,接下来为n阶方阵。每一测试用例最后一行为两个正整数i,j(1<=
阅读全文
摘要:合并线性表 描述:已知两非递减的顺序线性表,要求合并成一个新的非递减顺序线性表。 输入:输入包含四行,第一行为自然数n,表示第一个非递减顺序线性表的长度,第二行为n个自然数构成的非递减顺序线性表,第三行为自然数m,表示第二个非递减顺序线性表的长度,第四行为m个自然数构成的非递减顺序线性表。 输出:用
阅读全文
摘要:哈希查找 标准输入输出 题目描述: 实现哈希查找。要求根据给定的哈希函数进行存储,并查找相应元素的存储位置。本题目使用的哈希函数为除留取余法,即H(key)=key%m,其中m为存储空间,冲突处理方法采用开放定址法中的线性探测再散列,即Hi=(H(key)+i)/%m,0<=i<=m-1。 输入:
阅读全文
1