1本程序在vc++6.0编译通过并能正常运行。
2主界面程序已经尽量做到操作简便了,用户只需要根据提示一步步进行操作就行了。
六思考和总结:这个课程设计的各个基本操作大部分都在我的综合性实验中实现了,所以做这个主要攻克插入和删除这两个算法!其中插入在书本上已经有了,其中的右平衡算法虽然没有给出,但通过给出的左平衡算法很容易就可以写出右平衡算法。
所以最终的点就在于删除算法的实现!做的过程中对插入算法进行了非常非常多次的尝试!花了非常多的时间,这其中很多时候是在对程序进行单步调试,运用了VC6。
0的众多良好工具,也学到了很多它的许多好的调试手段。
其中删除算法中最难想到的一点是:在用叶子结点代替要删除的非叶子结点后,应该递归的运用删除算法去删除叶子结点!这就是整个算法的核心,其中很强烈得体会到的递归的强大,递归的最高境界(我暂时能看到的境界)!其它的都没什么了。
选做的那两个算法很容易实现的:1合并两棵平衡二叉排序树:只需遍历其中的一棵,将它的每一个元素插入到另一棵即可。
2拆分两棵平衡二叉排序树:只需以根结点为中心,左子树独立为一棵,右子树独立为一棵,最后将根插入到左子树或右子树即可。
BSTreeEmpty(BSTreeT)初始条件:平衡二叉排序树存在。
操作结果:若T为空平衡二叉排序树,则返回TRUE,否则FALSE.BSTreeDepth(BSTreeT)初始条件:平衡二叉排序树存在。
操作结果:返回T的深度。
LeafNum(BSTreeT)求叶子结点数,非递归中序遍历NodeNum(BSTreeT)求结点数,非递归中序遍历DestoryBSTree(BSTree*T)后序遍历销毁平衡二叉排序树TR_Rotate(BSTree*p)对以*p为根的平衡二叉排序树作右旋处理,处理之后p指向新的树根结点即旋转处理之前的左子树的根结点L_Rotate(BSTree*p)对以*p为根的平衡二叉排序树作左旋处理,处理之后p指向新的树根结点,即旋转处理之前的右子树的根结点LeftBalance(BSTree*T)对以指针T所指结点为根的平衡二叉排序树作左平衡旋转处理,本算法结束时,指针T指向新的根结点RightBalance(BSTree*T)对以指针T所指结点为根的平衡二叉排序树作右平衡旋转处理,本算法结束时,指针T指向新的根结点Insert_AVL(BSTree*T,TElemTypee,int*taller)若在平衡的二叉排序树T中不存在和e有相同的关键字的结点,则插入一个数据元素为e的新结点,并返回OK,否则返回ERROR.若因插入而使二叉排序树失去平衡,则作平衡旋转处理布尔变量taller反映T长高与否InOrderTraverse(BSTreeT)递归中序遍历输出平衡二叉排序树SearchBST(BSTreeT,TElemTypee,BSTree*f,BSTree*p)在根指针T所指的平衡二叉排序树中递归的查找其元素值等于e的数据元素,若查找成功,则指针p指向该数据元素结点,并返回TRUE,否则指针p指向查找路径上访问的最后一个结点并返回FALSE,指针f指向T的双亲,其初始调用值为NULLDelete_AVL(BSTree*T,TElemTypee,int*shorter)在平衡二叉排序树中删除元素值为e的结点,成功返回OK,失败返回ERRORPrintBSTree_GList(BSTreeT)以广义表形式打印出来PrintBSTree_AoList(BSTreeT,intlength)以凹入表形式打印,length初始值为0Combine_Two_AVL(BSTree*T1,BSTreeT2)合并两棵平衡二叉排序树Split_AVL(BSTreeT,BSTree*T1,BSTree*T2)拆分两棵平衡二叉树}(2)存储结构的定义:typedefstructBSTNode{ TElemTypedata; intbf;//结点的平衡因子 structBSTNode*lchild,*rchild;//左.右孩子指针}BSTNode,*BSTree;
1
节目评分系统本系统采用PHP+MYSQL编写,评分规则为去掉一个最高分和一个最低分然后再算平均分。
节目表和评委可自由配制(网址为:网址/admin),每个节目设4个小项得分。
系统优点:当某一节目评分结束后可通过排行榜可以看到名次,分数等情况,适合投影。
节目现场准备二台电脑用交换机连成局域,一台安装本系统,专门输入分数。
另一台通过交换机访问安装有本系统的排行榜用于投影。
如何使用?首先您要已经安装好PHP+MYSQL(可从http://www.wampserver.com/下载Wampserver集成服务器,一次性搞定)。
下载本压缩包,解压到www目录下Connections/db.php为数据库连接文件,请根据您的实际情况配制。
SQL.txt执行该文件可以创建数据库。
一切设置OK,通过网址访问即可。
2024/6/15 19:48:27 152KB 评分 节目评分 PHP
1
该资源仅用与学习参考!禁止用于其他用途!自己写的个静态库画框画线绘制文字,ImGui,创建透明窗口,内存搜索特征码(植物大战僵尸里搜索"FFFFFFFFFF",仅用时200毫秒左右),获取进程ID等等繁杂或者麻烦的东西都封装好了,很简地单调用就OK了,资源里有调用的例子,有点成就可以鼓舞一下自己学习的信心嘛,有时间再写这么去实现
214.05MB C++静态库
1
F042网络资源很少,这个是我产品开发的文档,花费了不少时间。
能兼容定时器中断,can通信及ADC,已调试OK。
2024/6/14 5:40:44 3.33MB STM32F042
1
PS3摄像头驱动CL-Eye-Driver-5.3.0.0341驱动+客户端(win10亲测ok)
2024/6/8 13:51:16 5.13MB PS3驱动
1
很难找到的一个插件,这个文件好像也不是很常用,但这个ase文件可以用记事本打开的,很直观很方便。
大家有需要的快下了哦,下到max安装目录下的stdplugs文件夹下就OK了!
2024/6/7 19:25:36 43KB ase文件 max插件
1
javab/s教学网站设计内容较全面有完整的文字部分软件运行也ok
2024/5/30 7:41:26 423KB java jsp
1
defGMM_algorithm(iterMax,gmm,dataset):'''高斯混合聚类算法:paramiterMax:最大迭代次数:paramgmm:保存gmm模型的数据:return:簇划分结果'''step=0m=len(dataset)flagMat=np.mat(np.zeros((m,1)))#保存每个样本的簇标记lateProbMat=np.mat(np.zeros((m,3)))#保存后验概率whilestep3):k+=1print(k)mark=['or','ob','og','ok','^r','+r','sr','dr','<r','pr']#画出所有样例点属于同一分类的绘制同样的颜色foriinrange(numSamples):
2024/5/18 3:22:23 183KB python聚类
1
下载后,解压后,把里面的29个文件拖到U盘根目录,插到复印机上,重启复印机自动升级,升级好后,拔掉U盘,再重启复印机就OK了
2024/5/17 15:39:05 113.29MB 京瓷复印机 6525
1
Delphi中英文语音朗读程序(控件及源码)调试OK先安装MicrosoftSpeechSDK5.1,这是微软的声音支持控件前面安装不多做介绍,一步一步安装即可安装完成后,需要加载Delphi控件在DelphiIDE中选择菜单Project,ImportTypeLibrary—点击按钮Add(C:\ProgramFiles\CommonFiles\MicrosoftShared\Speech\sapi.dll)—点击按钮Install-在Install对话框中点击按钮OK—在Confirm对话框中点击按钮Yes—在对话框中点击按钮OK。
至此,共19个控件被添加到Delphi组件板ActiveX页上。
其中spvoice控件是我们要使用的MicrosoftSpeechSDK5.1下载地址:http://intraweb.5d6d.com/thread-280-1-1.htmlSpVoice详解属性描述AlertBoundary取得或设置停顿分界线。
AllowAudioOutputFormatChangesOnNextSet设置是否允许声音自动调整到合适状态以适应其音频输出。
AudioOutput.取得或设置当前声音使用的的音频输出对象AudioOutputStream取得或设置当前声音使用的的音频输出流对象。
EventInterests取得或设置当前声音返回的事件类型。
Priority取得或设置声音的优先级。
Rate取得或设置阅读的速度。
Status返回一个ISpeechVoiceStatus对象用于显示当前阅读和事件的状态SynchronousSpeakTimeout取得或设置一个时间间隔,用于标识多久未获得一个输出设备后,一个同步的Speak和SpeakStream将终止,以毫秒计算。
Voice取得或设置发音对象。
Volume取得或设置声音的大小。
方法描述DisplayUI是否在控制面板中展示详细设置。
GetAudioOutputs返回一个可用的音频输出标记。
GetVoices返回一个可用的发音对象。
IsUISupported决定是否能通过控制棉板的音频设置来控制。
Pause暂停朗读。
.Resume恢复暂停,继续播放。
Skip在当前输入的文本流中向前或向后跳一定距离再播放。
Speak阅读一个字符串。
SpeakCompleteEvent得到一个朗读完毕的时间句柄SpeakStream朗读一个文本流或一个声音文件。
WaitUntilDone阻塞进程,直到声音播放完毕或者超时。
2024/5/6 10:08:08 348KB Delphi中英文语音朗读程序
1
共 349 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡