- 博客(16)
- 收藏
- 关注
原创 华农数据结构实验一8578 顺序表逆置
顺序表的基本操作代码如下:int *elem;int length;}SqList;{ // 算法2.3// 构造一个空的线性表L。if (!// 存储分配失败// 空表长度为0// 初始存储容量return OK;{ // 算法2.4// 在顺序线性表L的第i个元素之前插入新的元素e,// i的合法值为1≤i≤ListLength_Sq(L)+1// i值不合法if (L.length >= L.listsize) { // 当前存储空间已满,增加容量。
2025-05-20 15:18:09
573
原创 华农数据结构18923 二叉树的直径
给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可能不穿过根结点。1/ \2 3/ \4 5答案为3, 它的长度是路径 [4,2,1,3] 或者 [5,2,1,3]。
2025-05-20 15:07:15
236
原创 华农数据结构18724 二叉树的遍历运算
二叉树的三种遍历都可以通过递归实现。如果我们知道一棵二叉树的先序和中序序列,可以用递归的方法求后序遍历序列。
2025-05-20 15:05:35
180
原创 华农数据结构实验四18924 二叉树的宽度
二叉树的宽度指的是具有节点数目最多的那一层的节点个数。1/ \2 34答案为2, 第二层节点数最多,为2个节点。
2025-05-20 14:56:48
210
原创 华农数据结构8606 二叉树的构建及遍历操作
构造二叉链表表示的二叉树:按先序次序输入二叉树中结点的值(一个字符),'#'字符表示空树,构造二叉链表表示的二叉树T;再输出三种遍历序列。本题只给出部分代码,请补全内容。//左右孩子指针Status CreateBiTree(BiTree &T) { // 算法6.4// 按先序次序输入二叉树中结点的值(一个字符),’#’字符表示空树,// 构造二叉链表表示的二叉树T。char ch;else {if (!
2025-05-20 11:54:00
259
原创 华农数据结构18769 不完整的排序
第i组数组的第一行为整数n,(1<=n<=100000)表示数组的大小,第二行为n个整数。(2)j指针从右至左遍历,当碰到不满足条件的元素(负数),我们暂停 j 移动。(1)i指针从左至右遍历,当碰到不满足条件的元素(正数),我们暂停i 移动。而是使用两个相反方向(对撞指针)的指针进行扫描,从而达到相应的目的。一个数组只包含正负整数,请使用一个O(n)级别的算法对其进行排序。双指针,指的是在遍历对象的过程中,不是普通的使用单个指针进行访问,(1<=T<=10)(4)重复 1,2,3 步骤,直到i和j相遇。
2025-05-20 10:50:24
138
原创 华农数据结构18769 不完整的排序
第i组数组的第一行为整数n,(1<=n<=100000)表示数组的大小,第二行为n个整数。(2)j指针从右至左遍历,当碰到不满足条件的元素(负数),我们暂停 j 移动。(1)i指针从左至右遍历,当碰到不满足条件的元素(正数),我们暂停i 移动。而是使用两个相反方向(对撞指针)的指针进行扫描,从而达到相应的目的。一个数组只包含正负整数,请使用一个O(n)级别的算法对其进行排序。双指针,指的是在遍历对象的过程中,不是普通的使用单个指针进行访问,(1<=T<=10)(4)重复 1,2,3 步骤,直到i和j相遇。
2025-05-20 10:18:24
156
原创 华农数据结构8591 计算next值
编写算法,录入多个字符串计算并验证NEXT值,输入0结束。本题目给出部分代码,请补全内容。#define MAXSTRLEN 255 // 用户可在255以内定义最大串长// 0号单元存放串的长度// 算法4.7// 求模式串T的next函数值并存入数组next// 请补全代码SString S;int n,i,j;char ch;// 指定要验证NEXT值的字符串个数for(i=1;i<=n;
2025-05-20 09:39:20
342
原创 华农数据结构18937 阿克曼(Ackmann)函数
阿克曼(Ackmann)函数A(m,n)中,m,n定义域是非负整数(m≤3,n≤10),函数值定义为: 输入m和n。 函数值。 2 3 9 30002692
2025-05-19 23:06:54
300
原创 华农数据结构实验二18938 汉诺塔问题
汉诺塔(Tower of Hanoi),又称河内塔,是一个源于印度古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。由于条件是一次只能移动一个盘,且不允许大盘放在小盘上面,所以64个盘的移动次数是:18,446,744,073,709,551,615。
2025-05-19 22:53:01
185
原创 华农数据结构实验二8587 行编辑程序
利用栈编写简单的行编辑程序:接受用户从终端输入的程序或数据,在输入过程中,允许用户输入出差错,并在发现有误时可以及时更正。例如:当用户发现刚刚键入的一个字符是错的时,可以补进一个退格符“#”,以表示前一个字符无效;如果发现当前键入的行内差错较多或难以补救,则可以键入一个退行符“@”,以表示当前行中的字符均无效。例如:假设从终端接受了这样两行字符: whli##ilr#e (s#*s) outcha@putchar(*s=#++);则实际有效的是下列两行: while (*s) putchar(*s++);
2025-05-19 21:44:43
490
原创 华农数据结构8586 括号匹配检验
利用栈编写满足下列要求的括号匹配检验程序:假设表达式中允许包含两种括号:圆括号和方括号,其嵌套的顺序随意,即([]())或[([][])]等为正确的格式,[(]或([())或(()])均为不正确的格式。输入一个包含上述括号的表达式,检验括号是否配对。本题给出部分check()函数,要求将check()函数补充完整,并完成整个程序。// Status是函数的类型,其值是函数结果状态代码,如OK等#define STACK_INIT_SIZE 10 // 存储空间初始分配量。
2025-05-19 21:05:59
731
原创 华农数据结构实验二8585 栈的应用——进制转换
利用顺序栈的基本操作算法,编写满足下列要求的数制转换程序:对于输入的任意一个非负十进制整数,打印输出与其等值的八进制数。
2025-05-19 20:00:39
259
原创 华农数据结构实验二8584 循环队列的基本操作
创建一个空的循环队列,并实现入队、出队、返回队列的长度、返回队头元素、队列的遍历等基本算法。请将下面的程序补充完整。// Status是函数的类型,其值是函数结果状态代码,如OK等#define MAXQSIZE 100 // 最大队列长度(对于循环队列,最大队列长度要减1)// 初始化的动态分配存储空间int front;// 头指针,若队列不空,指向队列头元素int rear;// 尾指针,若队列不空,指向队列尾元素的下一个位置}SqQueue;
2025-05-19 19:57:53
626
原创 华农数据结构实验一8577 合并顺序表
若线性表中数据元素相互之间可以比较,且数据元素在表中按值递增或递减,则称该表为有序表。编写算法,将两个非递减有序顺序表A和B合并成一个新的非递减有序顺序表C。
2025-05-18 20:04:43
197
原创 华农数据结构实验一8576 顺序线性表的基本操作
时间限制:1000MS 代码长度限制:10KB提交次数:9027 通过次数:2456题型: 编程题 语言: G++;GCC。
2025-05-16 16:32:44
949
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅