- 博客(31)
- 收藏
- 关注
原创 Python程序设计期末复习
文本文件 data.txt 中保存一批实数,读文件,统计数据个数、最大数、最小数。到正确结果,对错误的输入,使用 try-except 结构给出输入错误提示。从键盘中输入一批数据,以-9999 结束,统计数据个数、平均值,最大值、最。从键盘输入两个正整数,计算输出其最大公约数。要求,对正确的输入,可得。小值,并将这些数据和统计结果写入文件 result.txt。输出 1 到 100 之间的所有素数,每行输出 5 个。求直角三角形的两个锐角度数。最小公约数和最大公倍数。计算球的表面积和体积。
2024-07-02 13:04:55 264
原创 18769 不完整的排序
第i组数组的第一行为整数n,(1<=n<=100000)表示数组的大小,第二行为n个整数。(2)j指针从右至左遍历,当碰到不满足条件的元素(负数),我们暂停 j 移动。(1)i指针从左至右遍历,当碰到不满足条件的元素(正数),我们暂停i 移动。而是使用两个相反方向(对撞指针)的指针进行扫描,从而达到相应的目的。一个数组只包含正负整数,请使用一个O(n)级别的算法对其进行排序。双指针,指的是在遍历对象的过程中,不是普通的使用单个指针进行访问,(1<=T<=10)(4)重复 1,2,3 步骤,直到i和j相遇。
2024-06-12 21:34:45 159
原创 8580 合并链表
线性链表的基本操作如下:int data;Status ListInsert_L(LinkList &L, int i, ElemType e) { // 算法2.9// 在带头结点的单链线性表L的第i个元素之前插入元素ep = L;int j = 0;while (p && j < i-1) { // 寻找第i-1个结点++j;if (!// i小于1或者大于表长// 生成新结点// 插入L中return OK;
2024-06-12 16:56:13 424
原创 8579 链式线性表的基本操作
编写算法,创建一个含有n个元素的带头结点的单链表L并实现插入、删除、遍历操作。本题目提供部分代码,请补全内容。int data;// 创建含有n个元素的单链表int i;ElemType e;// 先建立一个带头结点的单链表q = L;for (i=0;i<n;i++) {// 生成新结点// 请补全代码return OK;// 单链表遍历");// 请填空elsewhile(___________________________) // 请填空。
2024-06-12 16:03:22 1226
原创 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值不合法p>=q;// 插入位置及之后的元素右移*q = e;// 插入e++L.length;
2024-06-12 15:23:43 621
原创 8577 合并顺序表
若线性表中数据元素相互之间可以比较,且数据元素在表中按值递增或递减,则称该表为有序表。编写算法,将两个非递减有序顺序表A和B合并成一个新的非递减有序顺序表C。
2024-06-12 14:29:32 220
原创 8648 图的深度遍历
实现图的邻接表存储结构及一些基本操作函数。在此基础上实现图的深度遍历算法并加以测试。本题只给出部分代码,请补全内容。#include"malloc.h" /* malloc()等 */#include"stdio.h" /* EOF(=^Z或F6),NULL *//* 顶点权值类型 */#define MAX_NAME 3 /* 顶点字符串的最大长度+1 *//* 字符串类型 *//*图的邻接表存储表示 *//* {有向图,有向网,无向图,无向网} */int adjvex;
2024-06-09 11:10:58 1516
原创 8587 行编辑程序
利用栈编写简单的行编辑程序:接受用户从终端输入的程序或数据,在输入过程中,允许用户输入出差错,并在发现有误时可以及时更正。例如:当用户发现刚刚键入的一个字符是错的时,可以补进一个退格符“#”,以表示前一个字符无效;如果发现当前键入的行内差错较多或难以补救,则可以键入一个退行符“@”,以表示当前行中的字符均无效。例如:假设从终端接受了这样两行字符: whli##ilr#e (s#*s) outcha@putchar(*s=#++);则实际有效的是下列两行: while (*s) putchar(*s++);
2024-06-08 21:03:42 722
原创 8586 括号匹配检验
利用栈编写满足下列要求的括号匹配检验程序:假设表达式中允许包含两种括号:圆括号和方括号,其嵌套的顺序随意,即([]())或[([][])]等为正确的格式,[(]或([())或(()])均为不正确的格式。输入一个包含上述括号的表达式,检验括号是否配对。本题给出部分check()函数,要求将check()函数补充完整,并完成整个程序。// Status是函数的类型,其值是函数结果状态代码,如OK等#define STACK_INIT_SIZE 10 // 存储空间初始分配量。
2024-06-08 20:13:12 559
原创 8585 栈的应用——进制转换
利用顺序栈的基本操作算法,编写满足下列要求的数制转换程序:对于输入的任意一个非负十进制整数,打印输出与其等值的八进制数。
2024-06-08 19:32:10 244
原创 8584 循环队列的基本操作
创建一个空的循环队列,并实现入队、出队、返回队列的长度、返回队头元素、队列的遍历等基本算法。请将下面的程序补充完整。// Status是函数的类型,其值是函数结果状态代码,如OK等#define MAXQSIZE 100 // 最大队列长度(对于循环队列,最大队列长度要减1)// 初始化的动态分配存储空间int front;// 头指针,若队列不空,指向队列头元素int rear;// 尾指针,若队列不空,指向队列尾元素的下一个位置}SqQueue;
2024-06-08 19:19:59 727
原创 8583 顺序栈的基本操作
创建一个空的顺序栈,并实现栈的入栈、出栈、返回栈的长度、返回栈顶元素、栈的遍历等基本算法。请将下面的程序补充完整。#define STACK_INIT_SIZE 100 // 存储空间初始分配量#define STACKINCREMENT 10 // 存储空间分配增量// 定义栈元素类型// Status是函数的类型,其值是函数结果状态代码,如OK等// 在栈构造之前和销毁之后,base的值为NULL// 栈顶指针// 当前已分配的存储空间,以元素为单位// 顺序栈。
2024-06-08 16:39:51 582
原创 8622 哈希查找
这道题真的好无语...补全两个函数非常简单,但是运行结果一直是错的,跟其他同学的一对比才发现原来是题目给出的代码里面有错误T_T...错误的地方用红色标注出来了。
2024-06-08 15:42:26 1530
原创 18938 汉诺塔问题
汉诺塔(Tower of Hanoi),又称河内塔,是一个源于印度古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。由于条件是一次只能移动一个盘,且不允许大盘放在小盘上面,所以64个盘的移动次数是:18,446,744,073,709,551,615。
2024-06-08 08:00:00 390
原创 8610 顺序查找
编写Search_Seq函数,实现在一个无序表ST中采用顺序查找算法查找值为key的元素的算法.#include"malloc.h" /* malloc()等 */typedef struct /*静态查找表的顺序存储结构 *//* 数据元素存储空间基址,建表时按实际长度分配,0号单元留空 */int length;/* 表长度 */}SSTable;{ /* 操作结果: 构造一个含n个数据元素的静态顺序查找表ST(数据来自数组r) */int i,temp;
2024-06-06 17:00:51 445
原创 8592 KMP算法
用KMP算法对主串和模式串进行模式匹配。本题目给出部分代码,请补全内容。#define MAXSTRLEN 255 //用户可在255以内定义最大串长//0号单元存放串的长度// 算法4.7// 求模式串T的next函数值并存入数组next// 请补全代码// 算法4.6// 利用模式串T的next函数求T在主串S中第pos个字符之后的位置// KMP算法。请补全代码int i,j,n;char ch;int pos;// 指定n对需进行模式匹配的字符串。
2024-06-06 14:33:53 427
原创 8591 计算next值
编写算法,录入多个字符串计算并验证NEXT值,输入0结束。本题目给出部分代码,请补全内容。//这里如果不删掉oj应该会判编译错误#define MAXSTRLEN 255 // 用户可在255以内定义最大串长// 0号单元存放串的长度//这道题把字符串长度储存在下标为0的位置了// 算法4.7// 求模式串T的next函数值并存入数组next// 请补全代码//这里void改成intSString S;int n,i,j;
2024-06-06 14:04:15 428
原创 18923 二叉树的直径
给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可能不穿过根结点。1/ \2 3/ \4 5答案为3, 它的长度是路径 [4,2,1,3] 或者 [5,2,1,3]。
2024-06-04 10:52:03 391
原创 8648 图的深度遍历
第一行:输入0到3之间整数(有向图:0,有向网:1,无向图:2,无向网:3);第二行:输入顶点数和边数;第三行:输入各个顶点的值(字符型,长度〈3);(遍历从输入的第一个顶点开始)第四行:输入每条弧(边)弧尾和弧头(以空格作为间隔),如果是网还要输入权值;
2024-05-30 15:26:33 397
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人