数据结构算法演示(Windows版)使用手册一、功能简介本课件是一个动态演示数据结构算法执行过程的辅助教学软件,它可适应读者对算法的输入数据和过程执行的控制方式的不同需求,在计算机的屏幕上显示算法执行过程中数据的逻辑结构或存储结构的变化状况或递归算法执行过程中栈的变化状况。
整个系统使用菜单驱动方式,每个菜单包括若干菜单项。
每个菜单项对应一个动作或一个子菜单。
系统一直处于选择菜单项或执行动作状态,直到选择了退出动作为止。
二、系统内容本系统内含84个算法,分属13部分内容,由主菜单显示,与《数据结构》教科书中自第2章至第11章中相对应。
各部分演示算法如下:1.顺序表(1)在顺序表中插入一个数据元素(ins_sqlist)(2)删除顺序表中一个数据元素(del_sqlist)(3)合并两个有序顺序表(merge_sqlist)2.链表(1)创建一个单链表(Crt_LinkList)(2)在单链表中插入一个结点(Ins_LinkList)(3)删除单链表中的一个结点(Del_LinkList)(4)两个有序链表求并(Union)(5)归并两个有序链表(MergeList_L)(6)两个有序链表求交(ListIntersection_L)(7)两个有序链表求差(SubList_L)3.栈和队列(1)计算阿克曼函数(AckMan)(2)栈的输出序列(Gen、Perform)(3)递归算法的演示汉诺塔的算法(Hanoi)解皇后问题的算法(Queen)解迷宫的算法(Maze)解背包问题的算法(Knap)(4)模拟银行(BankSimulation)(5)表达式求值(Exp_reduced)4.串的模式匹配(1)古典算法(Index_BF)(2)求Next函数值(Get_next)和按Next函数值进行匹配(Index_KMP(next))(3)求Next修正值(Get_nextval)和按Next修正值进行匹配(Index_KMP(nextval))5.稀疏矩阵(1)矩阵转置(Trans_Sparmat)(2)快速矩阵转置(Fast_Transpos)(3)矩阵乘法(Multiply_Sparmat)6.广义表(1)求广义表的深度(Ls_Depth)(2)复制广义表(Ls_Copy)(3)创建广义表的存储结构(Crt_Lists)7.二叉树(1)遍历二叉树二叉树的线索化先序遍历(Pre_order)中序遍历(In_order)后序遍历(Post_order)(2)按先序建二叉树(CrtBT_PreOdr)(3)线索二叉树二叉树的线索化生成先序线索(前驱或后继)(Pre_thre)中序线索(前驱或后继)(In_thre)后序线索(前驱或后继)(Post_thre)遍历中序线索二叉树(Inorder_thlinked)中序线索树的插入(ins_lchild_inthr)和删除(del_lchild_inthr)结点(4)建赫夫曼树和求赫夫曼编码(HuffmanCoding)(5)森林转化成二叉树(Forest2BT)(6)二叉树转化成森林(BT2Forest)(7)按表达式建树(ExpTree)并求值(CalExpTreeByPostOrderTrav)8.图(1)图的遍历深度优先搜索(Travel_DFS)广度优先搜索(Travel_BFS)(2)求有向图的强连通分量(Strong_comp)(3)有向无环图的两个算法拓扑排序(Toposort)关键路径(Critical_path)(4)求最小生成树普里姆算法(Prim)克鲁斯卡尔算法(Kruscal)(5)求关节点和重连通分量(Get_artical)(6)求最短路径弗洛伊德算法(shortpath_Floyd)迪杰斯特拉算法(shortpath_DIJ)9.存储管理(1)边界标识法(Boundary_tag_method)(2)伙伴系统(Buddy_system)(3)紧缩无用单元(Storage_compaction)10.静态查找(1)顺序查找(Search_Seq)(2)折半查找(Serch_Bin)(3)插值查找(Search_Ins)(4)斐波那契查找(Searc
2025/4/23 10:46:30 3.17MB 数据结构 演示 软件 c
1
可编程逻辑实验报告,包括led灯循环,加减法器、序列检测器等
2025/4/22 19:20:18 578KB FPGA实验报告
1
该方法需要基于有限的观测数据估计自相关序列,当数据长度较短时,估计误差会比较大,AR参数的计算就会引入很大的误差。
从而导致功率谱估计出现谱线分裂与谱峰频率偏移等现象。
2025/4/22 16:02:25 18KB AR模型
1
输出序列可改变,移位方向可改变。
频率可调。
带说明和部分原理
2025/4/22 9:48:11 896KB 任意16位 序列发生器 multisim 14仿真
1
视频-https://www.bilibili.com/video/av55424162Oracle+Database+11g+PLSQL编程实战(书+源码)给力的oracle教程知识+实战才是王道。
文件夹PATH列表卷序列号为4E8D-6931
2025/4/22 8:23:45 3.36MB oracle+Java-
1
基于VS2005平台的视频稚嫩插帧程序,算法只是简单的均值算法,但是程序框架搭建的很好,可以实现基本的帧率上转换。
压缩包内有foreman.cif测试序列,程序可以直接跑通。
1
MINI版matlab,无须安装,解压即用。
MINI版matlab.exe启动时不检查C盘序列号.在启动时不加载java窗口框架,去掉了不常用的toolbox和用不到的dll.所以这个版本是个最小依赖度的Matlab,没有simulink,也没有medit.但保留了plot和figure的zoom功能.如果自己还有啥需要用的toolbox函数,就的自己往目录里加了。
两个文件,共6M多,解压后大概20M多点。
由于不加载java窗口框架,没有simulink,也没有medit,大大减少了内存的消耗,但也带来了一些不便。
下面简单介绍MINI版matlab的使用。
没有medit,这时.m文件只能用记事本编辑,存到work目录下。
如work目录已有的test.m可在命令窗口执行test命令调用已有的test函数。
可自己添加函数和工具箱,setpath不能用,如果要新添路径需要到\toolbox\local\pathdef.m中手动添加。
如果matlab.exe不能正常启动,请双击bin目录下的matlab.exe或matlab.bat。
MINI版在只需使用简单功能时可节省内存,提高速度。
如需解决复杂的问题,建议使用全功能版。
小提示:在使用全功能版时在开始-_-运行输入matlab.exe-nojvm启动程序,将不加载java窗口框架,可以减少内存的消耗,加快速度。
2025/4/19 5:15:09 5.84MB matlab matlab 精简
1
实现算符优先分析算法,完成以下描述算术表达式的算符优先文法的算符优先分析过程。
G[E]:E→E+T∣E-T∣TT→T*F∣T/F∣FF→(E)∣i说明:终结符号i为用户定义的简单变量,即标识符的定义。
要求:(1)构造该算符优先文法的优先关系矩阵或优先函数;
(2)输入串应是词法分析的输出二元式序列,即某算术表达式“实验项目一”的输出结果。
输出为输入串是否为该文法定义的算术表达式的判断结果。
(3)算符优先分析过程应能发现输入串出错。
(4)设计两个测试用例(尽可能完备),并给出测试结果。
2025/4/18 14:34:55 2KB 编译原理 算符优先文法
1
UWB定位STM32,这是经过实测的源码,亲测可用,定位原理是使用TOF方法的6次双向双边真实测距方法,可实现多基站多信标的定位,三个基站一个信标就可以实现定位,本代码使用的是1023长符号前导码序列,可以实现200米以内的测距和高精度定位,定位精度在10-30cm以内
2025/4/17 12:08:23 1.84MB UWB定位 UWB
1
递推极大似然参数辨识法MATLAB程序clearall%清理工作间变量closeall%关闭所有图形clc%清屏%%%%M序列、噪声信号产生%%%%L=1200;%四位移位积存器产生的M序列的周期y1=1;y2=1;y3=1;y4=0;%四个移位积存器的输出初始值fori=1:L;x1=xor(y3,y4);%第一个移位积存器的输入信号x2=y1;%第二个移位积存器的输入信号x3=y2;%第三个移位积存器的输入信号x4=y3;%第四个移位积存器的输入信号y(i)=y4;%第四个移位积存器的输出信号,幅值"0"和"1"ify(i)>0.5,u(i)=-1;%M序列的值为"1"时,辨识的输入信号取“-1”elseu(i)=1;%M序列的值为"0"时,辨识的输入信号取“1”endy1=x1;y2=x2;y3=x3;y4=x4;%为下一次的输入信号作准备end------
2025/4/16 16:21:31 2KB 极大似然法
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡