
数据结构--头歌
文章平均质量分 90
题目解析
JAVA郑
慢就是快
展开
-
编程题实训-查找
请编写一个递归的折半查找算法,查找给定有序数组中的某一元素。原创 2024-01-04 00:43:58 · 6581 阅读 · 4 评论 -
客观题测试-第8章排序
1、内排序要求待排序列一定要用顺序方式存储。A、对B、错2、稳定的排序算法优于不稳定的排序算法,因为稳定的排序方法效率高。A、对B、错3、对5个互异的整数进行排序,至少需要10次比较。A、对B、错4、当待排序的元素序列的初始排列全部按关键字从大到小有序时,为把他们排成从小到大的顺序,希尔排序比直接插入排序快。A、对B、错5、当待排序的元素序列的初始排列全部按关键字从小到大有序时,希尔排序比折半插入排序快。A、对B、错6、折半插入排序的时间复杂度为 O(nlog2n)A、对。原创 2023-12-19 13:41:00 · 5903 阅读 · 3 评论 -
客观题测试-第7章查找
1、关键字可以唯一地标识一个数据元素。A、对B、错2、二叉排序树是一个动态查找表。A、对B、错3、如果顺序表中各元素的查找概率相同,在顺序查找时,查找不成功的平均查找长度因元素有序排列或无序排列情况的不同而不同。A、对B、错解:在有序排列的情况下,查找不成功的概率会比无序排列时要高。因为有序排列时,每个元素都有其固定的位置,所以查找不成功时,需要检查的元素数量会更多。因此,在有序排列的情况下,查找不成功的平均查找长度会比无序排列时要长。原创 2023-12-18 22:46:05 · 6248 阅读 · 12 评论 -
编程题实训-排序
试以单链表为存储结构,实现简单选择排序算法。原创 2024-01-07 23:22:07 · 5767 阅读 · 1 评论 -
编程题实训-图
密密被困在一个迷宫里,迷宫有n个路口,编号为1-n。密密现在站在第一个路口,出口编号为m。先给出每个路口通向何处,问密密能否逃出迷宫。原创 2023-12-13 19:10:06 · 9674 阅读 · 11 评论 -
客观题测试-第6章图
1、无向图中一个顶点的度是指图中()。A、通过该顶点的简单路径数B、与该顶点相邻接的顶点数C、与该顶点连通的顶点数D、通过该顶点的回路数2、以下说法正确的是()。A、连通分量是无向图中的极小连通子图B、强连通分量是有向图中的极大强连通子图C、在一个有向图的拓扑序列中若顶点a在顶点b之前,则图中必有一条弧D、对有向图G,如果以任一顶点出发进行一次深度优先或广度优先搜索能访问到每个顶点,则该图一定是完全图解:对于D,完全图是指任何两个顶点之间都存在一条边的图。原创 2023-12-05 20:31:36 · 6938 阅读 · 1 评论 -
树和二叉树的综合应用
输入一串字符串,根据给定的字符串中字符出现的频率建立相应哈夫曼树,构造哈夫曼编码表,在此基础上可以对待压缩文件进行压缩(即编码),同时可以对压缩后的二进制编码文件进行解压(即译码)。原创 2023-11-19 14:43:22 · 11226 阅读 · 0 评论 -
客观题测试-第5章树和二叉树
1、二叉树的深度为k,则二叉树最少有()个结点。A、B、C、2kD、k2、某二叉树的中序序列为ABCDEFG,后序序列为BDCAFGE,则其左子树中结点数目为()A、3B、4C、5D、63、设一棵二叉树的中序遍历序列:badce,后序遍历序列:bdeca,则二叉树先序遍历序列为()A、adbceB、decabC、abcdeD、debac解:4、树最适合用来表示()。A、有序数据元素B、无序数据元素C、元素之间具有分支层次关系的数据D、元素之间无联系的数据。原创 2023-11-18 23:06:54 · 6865 阅读 · 1 评论 -
编程题实训-串
医学研究者最近发现了某些新病毒,通过对这些病毒的分析,得知它们的DNA序列都是环状的。现在研究者收集了大量的病毒DNA和人的DNA数据,想快速检测出这些人是否感染了相应的病毒。为方便研究,研究者将人的DNA和病毒的DNA均表示成由一些小写字母组成的字符串,然后检测某种病毒的DNA序列是否在患者的DNA序列中出现过,如果出现过,则此人感染了病毒,否则没有感染。注意:人的DNA序列是线性的,而病毒的DNA序列是环状的。请使用BF算法检测人是否感染相应病毒。原创 2023-11-11 19:09:01 · 8875 阅读 · 1 评论 -
编程题实训-队列
第一行为两个整数n和m,n表示入队序列A的长度(n个数依次连续入队,中间没有出队的情况),m表示出队序列B的元素数量(m个数依次连续出队,中间没有入队的情况)。第二行为序列A(空格分隔的n个整数)。第一行为一个整数n,n表示入队序列A的长度(n个数依次连续入队,中间没有出队的情况),第二行为序列A(空格分隔的n个整数)。第一行为一个整数n,n表示入队序列A的长度(n个数依次连续入队,中间没有出队的情况),第二行为序列A(空格分隔的n个整数)。依次输出队列中所有的整数,每两个整数之间用空格分隔。原创 2023-11-05 14:26:00 · 5992 阅读 · 2 评论 -
编程题实训-栈
本关任务:输入一个中缀算术表达式,求解表达式的值。运算符包括+、-、*、/、(、)、=,参加运算的数为double类型且为正数。(要求:直接针对中缀算术表达式进行计算,不能转换为后缀或前缀表达式再进行计算,只考虑二元运算即可。)多组数据,每组数据一行,对应一个算术表达式,每个表达式均以“=”结尾。当表达式只有一个“=”时,输入结束。参加运算的数为double类型。对于每组数据输出一行,为表达式的运算结果。输出保留两位小数。 这个函数接收三个参数:一个名为的操作符栈,一个名为的原创 2023-11-04 14:59:53 · 11616 阅读 · 11 评论 -
客观题测试-第4章串
详解版。原创 2023-10-23 20:40:54 · 5780 阅读 · 4 评论 -
客观题测试-第3章栈和队列
详解版。原创 2023-10-23 20:00:02 · 8128 阅读 · 5 评论 -
客观题测试-第2章线性表
由于链表的元素在内存中是分散存储的,访问特定元素需要从链表的头部开始逐个遍历节点,直到找到目标元素为止,因此链表不适用于随机存取。但是,链表在插入和删除元素方面具有优势,因为只需要修改指向目标元素的前一个节点的指针即可,无需移动其他元素。这是因为顺序存储方式需要在指定的位置插入或删除元素,而这个位置需要通过一定的计算才能得到,所以插入和删除的效率较低。因此,这个说法是错误的。3、在顺序表上可以从前向后顺序访问,也可以从后向前访问,还可以按元素序号随机访问,因此从查找的角度来看,顺序表比链表更灵活。原创 2023-10-23 19:01:09 · 11347 阅读 · 6 评论 -
编程题实训-基于链表的图书信息管理
本关任务:定义一个包含图书信息(书号、书名、价格)的链表,读入相应的图书数据完成图书信息表的创建,然后计算所有图书的平均价格,将所有低于平均价格的图书价格提高20%,所有高于或等于平均价格的图书价格提高10%,最后逐行输出价格修改后的图书信息。输入n+1行,前n行是n本图书的信息(书号、书名、价格),每本图书信息占一行,书号、书名、价格用空格分隔,价格之后没有空格。总计n+1行,第1行是所创建的图书表中的图书个数,后n行是n本图书的信息(书号、书名、价格),每本图书信息占一行,书号、书名、价格用空格分隔。原创 2023-10-14 23:29:00 · 20250 阅读 · 7 评论 -
编程题实训-基于顺序表的图书信息管理(头歌)
第1关:基于顺序存储结构的图书信息表的创建和输出。原创 2023-10-09 21:23:48 · 19071 阅读 · 6 评论 -
编程题实训-顺序表应用
多组数据,每组数据有三行,第一行为顺序表的长度n,第二行为顺序表的n个元素(元素之间用空格分隔),第三行为待删除的元素的值item。当n=0时输入结束。本关任务:利用顺序表表示一个包括n个整数的序列,请实现一个时间复杂度为O(n),空间复杂度为O(1)的算法,该算法可以删除表中所有值为item的元素。对于每组数据分别输出一行,依次输出删除值为item的元素后顺序表中的剩余元素,元素之间用空格分隔。原创 2023-09-16 13:49:02 · 5312 阅读 · 4 评论 -
编程题实训-链表应用
之后紧跟a行,每行两个整数a1和a2,分别代表A(x)每项的系数和指数,再之后紧跟b行,每行两个整数b1和b2,分别代表B(x)每项的系数和指数,每组数据最后一行为一个字符(+、-、*、'),分别代表多项式的加法、减法、乘法和求导运算。多组数据,每组数据有三行,第一行为序列A和B的长度n和m,第二行为序列A的n个元素,第三行为序列B的m个元素(元素之间用空格分隔)。多组数据,每组数据有三行,第一行为序列A和B的长度n和m,第二行为序列A的n个元素,第三行为序列B的m个元素(元素之间用空格分隔)。原创 2023-10-19 12:29:15 · 7444 阅读 · 5 评论 -
客观题测试-第1章绪论
详解版详解版。原创 2023-10-23 18:19:46 · 7366 阅读 · 8 评论