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
ubuntu安装inode3.6时需要,这个希望对广大朋友有所帮助
2024/6/16 17:51:04 126KB libjpeg inode linux
1
升级了剧院爱好者的社交应用。
项目详情欢迎来到升级!此应用程序是由剧院爱好者为剧院爱好者创建的。
升级是...感谢您的光临!应用升级版:://upstaged.herokuapp.com/要求:使用以下命令在客户端文件夹中添加一个.env文件:REACT_APP_API_KEY=此处为您的RapidApiKey构建细节此应用程序是使用以下工具开发的:React.js,组件,用户身份验证,材料表,Axios,Bootstrap,JavaScript,Node.js,API等!储存库和预览在以下位置查看存储库::更新您可以在存储库中找到项目更新,突出显示创建最终产品所执行的操作。
学分UNC编码BootcampAndTrilogy的灵感。
以及剧院,NPM材质表,Web搜索API,Bootstrap,React,Axios和其他NPM软
2024/6/14 21:44:43 15.76MB JavaScript
1
NPSAPI(下一级周-:rocket:火箭座)NodeJS的API保证将在下一学期的4º星期内!Néépossívelcriarumusuárioeumapesquisa,épossivelqueososuuuriosresponseamaspesquisascomnotasde0and10atravésdeum电子邮件enviadoaeles,eteroNPS(Métricadesatisfaçsao。
pes):pushpin:实用技术API的Abaixoestão算法和utilizadasdurante或desenvolvimentoAPI。
签证:有效的签证组织。
EscrevercódigolimpoVisandoReutilizaçãoeeficiênciaecriartestesunitáriosedeIntegração。
:bookmark_tabs:
2024/6/14 9:47:46 115KB TypeScript
1
ELK、EFK安装及配置文档,详细的阐述了EFK架构,其中包括了kafka、elasticsearch、elasticsearch-head、nodejs、kibana、logstash、filebeat等的安装配置。
2024/6/13 1:29:22 827KB EFK ELK 日志系统 kafka
1
Fabric学习资料参考及路线指南建议区块链学习书籍推荐《区块链技术指南》–邹均、张海宁、唐屹(入门书籍)《区块链开发实战HyperledgerFabric关键技术与案例分析》–冯翔、刘涛《HyperledgerFabric开发实战快速掌握区块链》–电子工业出版社《Node.js区块链开发》–朱志文《HyperledgerFabric开发实战快速掌握区块链技术》—杨毅(强烈推荐!!)《Fabric官方开发文档》(重点参考关注)Fabric开发学习路线1.可以先尝试跑通first-network,fabric-samples下面几个项目2.然后可以尝试修改里面的链码
2024/6/10 0:29:05 34KB ab br c
1
常见问题及处理方案CPU使用率高的问题通过操作系统命令toptopasglance等查看top进程号,确认是系统进程还是oracle应用进程,查询当前top进程执行的操作和sql语句进行分析。
根据进程号获取正在执行的sqlSELECTa.osuser,a.username,b.address,b.hash_value,b.sql_textfromv$sessiona,v$sqltextb,v$processpwherep.spid=&spidandp.addr=a.paddranda.STATUS='ACTIVE'anda.sql_address=b.addressorderbyaddress,piece;数据库无法连接数据库无法连接,一般可能是如下原因造成:(1)数据库宕了(2)监听异常(3)数据库挂起(4)归档目录满(5)数据库或应用主机的网卡出现问题不能正常工作(6)应用主机到数据库主机的网络出现问题。
1、数据库宕了立即启动数据库。
Startup2、监听异常此时一般体现为:监听进程占用CPU资源大;
d监听日志异常。
此时,立即重启监听,监听重启一般能在1分钟之内完成。
Lsnrctlrestart3、数据库挂起立即重启数据库。
Startup4、归档目录满(1)在没有部署OGG数据同步的情况下,立即清理归档日志文件。
(2)如果部署了OGG数据同步,查看OGG正在读取的归档日志文件,立即清理OGG不再需要的日志文件。
5、数据库或应用主机的网卡出现问题不能正常工作。
立即联系主机工程师处理。
6、应用主机到数据库主机的网络出现问题。
立即联系网络维护人员查看。
CRS/GI无法启动对于10g及11gR1版本的CRS问题1、进入/tmp目录下,看是否产生了crsctl.xxxxx文件如果有的话,看文件内容,一般会提示OCR无法访问,或者心跳IP无法正常绑定等信息。
2、如果/tmp目录下没有crsctl.xxxxx文件此时查看ocssd.log文件,看是否能从中得到有价值的信息。
可能的问题:网络心跳不通。
3、/tmp目录无crsctl.xxxxx且日志中没有报错信息,只有停CRS时的日志信息。
此时可能是RAC两个节点对并发裸设备的访问有问题,此时考虑:(1)停掉两个节点的CRS。
(2)两个节点先同时去激活并发VG,然后再激活VG。
(3)重新启动CRS。
对于11gR2的GI问题分析$GRID_HOME/log/nodename目录下的日志文件,看是否能从中找出无法启动的原因。
常见问题:1、心跳IP不同。
2、ASM实例无法启动。
对CRS的故障诊断和分析,参加本文档中RAC部分的MOS文档.数据库响应慢应急处理步骤:(1)找到占用CPU资源大的sql或者模块,然后停掉此应用模块。
(2)如果属于由于种种原因引起的数据库hang住情况,立即重启数据库,此时重启需要约15分钟时间。
重要说明:如果重启数据库的话,会有如下负面影响:(1)要kill掉所有连接到数据库中的会话,所有会话都会回滚。
(2)立即重启的话,不能获取并保留分析数据库挂起原因的信息,在后续分析问题时,没有足够信息用于分析问题产生的根本原因。
一般正常重启的话,都需要手动获取用于分析数据库重启原因的信息,以便编写分析报告,但是在最长情况下,获取日志信息可能就要40分钟时间。
此时一般做systemstatedump,且如果是rac情况的话,需要2个节点都做,且需要做2次或以上。
常规处理步骤,分如下几种情况处理:(1)所有业务模块都慢。
(2)部分业务模块慢。
(3)数据库hang住。
所有业务模块都慢此时首先查看系统资源,看是否属于CPU资源使用率100%的问题,如果是,参考本章“CPU使用率高的问题”解决办法。
如果系统资源正常,那很可能是数据库hang住了,此时参考数据库Hang部分。
部分业务模块慢分析运行慢的模块的sql语句:(1)看是否是新上的sql。
(2)看执行计划是否高效。
(3)优化运行慢的模块的sql语句。
数据库hang住应急处理方式:重启数据库。
常规处理方式:(1)分析alert日志,看是否能从alert日志中,可以很快找到引起问题的原因。
(2)做3级别的hanganalyze,先做一次,然后隔一分钟以后再做一次。
并分析
442KB oracle
1
包涵以下版本的87个安装包:bind-libs-9.9.4-61.el7.x86_64.rpmbind-libs-lite-9.9.4-61.el7.x86_64.rpmbind-license-9.9.4-61.el7.noarch.rpmbind-utils-9.9.4-61.el7.x86_64.rpmcompat-libcap1-1.10-7.el7.x86_64.rpmcompat-libstdc++-33-3.2.3-72.el7.x86_64.rpmcpp-4.8.5-28.0.1.el7_5.1.x86_64.rpmelfutils-libelf-devel-0.160-1.el7.i686.rpmelfutils-libelf-devel-0.160-1.el7.x86_64.rpmelfutils-libelf-devel-static-0.160-1.el7.i686.rpmelfutils-libelf-devel-static-0.160-1.el7.x86_64.rpmgcc-4.8.5-28.0.1.el7_5.1.x86_64.rpmgcc-c++-4.8.5-28.0.1.el7_5.1.x86_64.rpmglibc-2.17-222.el7.x86_64.rpmglibc-2.17-78.el7.i686.rpmglibc-2.17-78.el7.x86_64.rpmglibc-common-2.17-222.el7.x86_64.rpmglibc-devel-2.17-222.el7.x86_64.rpmglibc-devel-2.17-78.el7.i686.rpmglibc-devel-2.17-78.el7.x86_64.rpmglibc-headers-2.17-222.el7.x86_64.rpmgssproxy-0.7.0-17.el7.x86_64.rpmkernel-container-3.10.0-0.0.0.2.el7.x86_64.rpmkernel-headers-3.10.0-862.9.1.el7.x86_64.rpmkeyutils-1.5.8-3.el7.x86_64.rpmksh-20120801-137.0.1.el7.x86_64.rpmlibaio-devel-0.3.109-13.el7.x86_64.rpmlibbasicobjects-0.1.1-29.el7.x86_64.rpmlibcollection-0.7.0-29.el7.x86_64.rpmlibdmx-1.1.3-3.el7.x86_64.rpmlibevent-2.0.21-4.el7.x86_64.rpmlibgcc-4.8.5-28.0.1.el7_5.1.x86_64.rpmlibgomp-4.8.5-28.0.1.el7_5.1.x86_64.rpmlibICE-1.0.9-9.el7.x86_64.rpmlibini_config-1.3.1-29.el7.x86_64.rpmlibmpc-1.0.1-3.el7.x86_64.rpmlibnfsidmap-0.25-19.el7.x86_64.rpmlibpath_utils-0.2.1-29.el7.x86_64.rpmlibref_array-0.1.5-29.el7.x86_64.rpmlibselinux-2.5-12.0.1.el7.x86_64.rpmlibselinux-python-2.5-12.0.1.el7.x86_64.rpmlibselinux-utils-2.5-12.0.1.el7.x86_64.rpmlibsepol-2.5-8.1.el7.x86_64.rpmlibSM-1.2.2-2.el7.x86_64.rpmlibstdc++-4.8.5-28.0.1.el7_5.1.x86_64.rpmlibstdc++-devel-4.8.5-28.0.1.el7_5.1.x86_64.rpmlibtirpc-0.2.4-0.10.el7.x86_64.rpmlibverto-libevent-0.2.5-4.el7.x86_64.rpmlibX11-1.6.5-1.el7.x86_64.rpmlibX11-common-1.6.5-1.el7.noarch.rpmlibXau-1.0.8-2.1.el7.x86_64.rpmlibxcb-1.12-1.el7.x86_64.rpmlibXext-1.3.3-3.el7.x86_64.rpmlibXi-1.7.9-1.el7.x86_64.rpmlibXinerama-1.1.3-2.1.el7.x86_64.rpmlibXmu-1.1.2-2.el7.x86_64.rpmlibXrandr-1.5.1-2.el7.x86_64.rpmlibXrender-0.9.10-1.el7.x86_64.rpmlibXt-1.1.5-3.el7.x86_64.rpmlibXtst-1.2.3-1.el7.x86_64.rpmlibXv-1.0.11-1.el7.x86_64.rpmlibXxf86dga-1.1.4-2.1.el7.x86_64.rpmlibXxf86misc-1.0.3-7.1.el7.x86_64.rpmlibXxf86vm-1.1.4-1.el7.x86_64.rpmlm_sensors-libs-3.4.0-4.20160601gitf9185e5.el7.x86_64.rpmmailx-12.5-19.el7.x86_64.rpmmpfr-3.1.1-4.el7.x86_64.rpmnet-tools-2.0-0.22.20131004git.el7.x86_64.rpmnfs-utils-1.3.0-0.54.0.1.el7.x86_64.rpmoracle-rdbms-server-11gR2-preinstall-1.0-5.el7.x86_64.rpmpolicycoreutils-2.5-22.0.1.el7.x86_64.rpmpsmisc-22.20-15.el7.x86_64.rpmquota-4.01-17.el7.x86_64.rpmquota-nls-4.01-17.el7.noarch.rpmrpcbind-0.2.0-44.el7.x86_64.rpmselinux-policy-3.13.1-192.0.3.el7_5.4.noarch.rpmselinux-policy-targeted-3.13.1-192.0.3.el7_5.4.noarch.rpmsmartmontools-6.5-1.el7.x86_64.rpmsysstat-10.1.5-13.el7.x86_64.rpmtcp_wrappers-7.6-77.el7.x86_64.rpmunixODBC-2.3.1-10.el7.i686.rpmunixODBC-2.3.1-10.el7.x86_64.rpmunixODBC-devel-2.3.1-10.el7.i686.rpmunixODBC-devel-2.3.1-10.el7.x86_64.rpmunzip-6.0-19.el7.x86_64.rpmxorg-x11-utils-7.5-22.el7.x86_64.rpmxorg-x11-xauth-1.0.9-1.el7.x86_64.rpm安装方法直接输入:rpm-ivh*.rpm--nodeps--force
2024/6/3 21:14:08 74.78MB Oracle11.2.0 64位 Linux 11g
1
此资源仅是为了配合iView-Admin正常运行而创建的Express服务端,取代了iView-Admin中原有Mock,便于和我一样的菜鸟观察iView-Admin与服务器之间的按口。
使用方法为:首先要有Express环境。
下载此压缩包后先解压,然后运行压缩包中的start_server.bat(或者直接SETDEBUG=iview-admin-server:*&npmstart也是一样的)。
iView-Admin需要作以下修改1.修改src\config\index.js,将dev:'https://www.easy-mock.com/mock/5add9213ce4d0e69998a6f51/iview-admin/'改为dev:'http://localhost:3000';2.删除或者注释掉\src\main.js中的if(process.env.NODE_ENV!=='production')require('@/mock')
2024/5/31 11:26:57 4.54MB iView- Expres 服务器端
1
Angular5示例购物应用程序+Angular材质+响应式用:red_heart_selector:用户界面说明该应用程序提供了维护购物清单的可能性。
可以在搜索字段中搜索产品每种产品都可以添加到购物清单中可以查看购物清单可以从购物清单中删除产品购物清单名称可以定义和更改人性化设计API连接:应用程序使用shutterstock.comAPI,但可以轻松更改为任何其他API产品特点角度5+国际化(翻译)路由延迟加载(购物模块)材料设计自定义加载页面响应式布局(弹性布局模块)RxJS/可观察的角形Http可扩展架构遵循最佳做法!环境安装您需要在PC/Mac上安装Node.js和npm。
然后只需在项目的根目录中运行npminstall。
开发服务器为开发服务器运行npmstart。
导航到http://localhost:4200/。
如果您更改任何源文件,该应用程序将自动重新加载。
建立运行npmrunbuild来构建项目。
构建工件将存储在dist/目录中。
使用-prod标志进行生
2024/5/26 18:36:18 623KB boilerplate angular material material-design
1
共 556 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡