数据结构算法演示(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
1、Qt界面加载网络摄像头,并实时显示,根据头文件中的宏定义来区分使用哪种方式。
①Qt信号槽更新界面,②c语言回调方式更新界面2、使用OpenCV、RTSP打开摄像头3、适合初学者4、本人使用Qt5.10.0、vs2015、opencv3.4.3,必须在运行根目录添加opencv动态库或将此库添加环境变量5、里面涉及到一些单例模式、类静态成员的用法,后期再整理,供大家共同成长
2025/4/23 1:20:26 4KB opencv 网络摄像头 RTSP Qt信号槽
1
目的:通过调研目前教学管理系统中的成绩管理子系统,了解成绩管理子系统的业务流程;
通过分析比较,结合用户对成绩管理子系统的改进意见与实现情况,运用面向对象思想方法,设计和实现一个满足功能和性能,并有所创新的成绩管理子系统,以提高成绩管理的自动化、友好性等。
本系统基于.NET平台和SQLServer数据库,通过毕业设计,可以使学生对.NET结构下开发B/S模式的分布式三层数据库系统有一个全面的了解。
本系统从功能上划分可分为以下几大模块:功能模块管理,组权限管理,学生信息管理,课程信息管理,学生成绩管理,授课信息管理,学生信息查询,学生成绩统计等几大模块。
以下将对各子模块进行说明。
功能模块管理:将系统功能模块保存到数据库中以便于动态地进行不同用户组权限的分配等操作。
本模块包括功能模块的添加,删除,修改等。
组权限管理:对用户进行分组,并将权限设置到不同的用户组。
学生信息管理模块:输入学生基本信息,并可以对学生信息进行添加、查询、修改、删除。
还可以关键字查询并从数据库里调出的学生基本信息.输出学生基本信息,学号、班号、姓名查询的信息结果。
课程信息管理:设置课程号,课程名,先修课等课程信息。
成绩信息管理模块:输入成绩信息,并可以对成绩信息进行添加、查询、修改、删除。
还可以用关键字查询并调出数据库里的学生基本成绩信息的修改、删除等。
输出查询的学生成绩信息。
授课信息管理:对教师授课信息的调度,安排等信息的管理。
学生信息查询:本模块是可对学生成绩进行查询,可按学号,姓名,年龄,所在院系,入学年份等不同条件独立查询或进行模糊查询。
学生成绩统计:对学生成绩总分,平均分等进行统计。
系统管理员后台用户名为admin密码为www.mycodes.net普通用户(测试用例)用户名为:user01,密码:111111DB下为Sql数据库,附加即可论文下为该程序的论文及论文目录
1
此计数器是999,用数码管实现,包括分频模块,从20M分到1HZ,计数模块,动态扫描,显示译码等,完全可以在硬件上实现,只要改一下数,即可完成任意计数器
2025/4/22 12:32:18 310KB 包括多个模块
1
Web网页程序设计+ASP动态网站程序设计_ppt教学课件.zip
2025/4/21 13:11:04 4.48MB asp web 网页 html
1
介绍了各种典型的数据结构,以及递归、查找和排序的方法很好的学习资料===========================================》【第1章】绪论数据结构的基本概念抽象数据类型和软件构造方法算法和算法的时间复杂度【第2章】线性表线性表抽象数据类型顺序表单链表循环单链表循环双向链表静态链表设计举例【第3章】堆栈和队列堆栈堆栈应用队列队列应用优先级队列【第4章】串串的基本概念和C语言的串函数串的存储结构动态数组实现的顺序串串的模式匹配算法——BF算法【第5章】数组数组的基本概念动态数组特殊矩阵稀疏矩阵【第6章】递归算法递归的概念递归算法的执行过程递归算法的设计方法递归过程和运行时栈递归算法的效率分析设计举例【第7章】广义表广义表的概念广义表的存储结构广义表的操作实现【第8章】树和二叉树树二叉树二叉树设计二叉树遍历线索二叉树哈夫曼树等价问题树与二叉树的转换树的遍历【第9章】图图的基本概念图的存储结构图的实现图的遍历最小生成树最短路径拓扑排序关键路径【第10章】排序图的基本概念图的存储结构图的实现图的遍历最小生成树最短路径拓扑排序关键路径【第11章】查找查找的基本概念静态查找表动态查找表哈希表
2025/4/20 13:34:08 2.2MB 数据结构 C语言 4版 朱战立
1
采用htmlcssjavascript实现的立体旋转动态魔方,六个面的照片可自行替换,代码已经过详加注释,只需要自行换上照片,即可看到炫酷的动态魔方
2025/4/20 6:41:14 8.35MB HTML CSS Javascript
1
互斥缓存-Python一个小型实用程序库,用于基于缓存键动态创建互斥体。
用例假设您正在实现一个graphql服务器,其对象字段彼此独立地异步解析。
多个字段执行相同的操作,因此应使用互斥锁和一些基本缓存来确保数据库查询最多发生一次。
如果您有这些对象的数组,则它们突然都使用相同的互斥量,这可能会降低性能。
动态创建多个短期的互斥对象,而不是使用一个互斥对象来全部统治它们,每个对象可以独立于其他解析对象使用。
通过为互斥锁使用与用于缓存检查相同的缓存键,几乎可以透明地使用动态创建的互斥锁,而不必担心互斥锁的性能或分配/取消分配。
使用互斥锁,如果已经存储了与缓存键关联的互斥锁,则将其返回。
否则,将以静默方式创建新的互斥锁,将其存储以备将来使用并返回。
安装pip3installmutexcache用法MutexCache.get()返回threading.Lock对
2025/4/19 19:37:03 8KB Python
1
在STM32或者51下实现用一片TM1640芯片控制8X16点阵,可实现点阵自己DIY显示,动态显示,移屏操作,只用到两个32单片机IO口即可控制,大大减少了对于单片机资源的占用。
2025/4/19 9:10:51 2KB STM32 点阵 TM1640
1
用无向网表示校园景点平面图,图中顶点表示主要景点,存放景点的编号、名称、简介等信息,图中的边表示景点间的道路,存放路径长度等信息。
要求能够回答有关景点介绍、游览路径等问题。
 基本要求: ① 查询任意景点的相关信息;
② 查询图中任意两个景点间的最短路径。
③ 查询图中任意两个景点间的所有路径。
④ 增加、删除、更新有关景点和道路的信息。
(选作)* 求多个景点的最佳(最短)游览路径。
带图形界面,动态标记路线,95分的课设
2025/4/19 1:10:54 147KB 数据结构
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡