数据结构算法与应用-C++语言描述目录译者序前言第一部分预备知识第1章C++程序设计11.1引言11.2函数与参数21.2.1传值参数21.2.2模板函数31.2.3引用参数31.2.4常量引用参数41.2.5返回值41.2.6递归函数51.3动态存储分配91.3.1操作符new91.3.2一维数组91.3.3异常处理101.3.4操作符delete101.3.5二维数组101.4类131.4.1类Currency131.4.2使用不同的描述方法181.4.3操作符重载201.4.4引发异常221.4.5友元和保护类成员231.4.6增加#ifndef,#define和#endif语句241.5测试与调试241.5.1什么是测试241.5.2设计测试数据261.5.3调试281.6参考及推荐读物29第2章程序功能302.1引言302.2空间复杂性312.2.1空间复杂性的组成312.2.2举例352.3时间复杂性372.3.1时间复杂性的组成372.3.2操作计数372.3.3执行步数442.4渐进符号(O、健?、o)552.4.1大写O符号562.4.2椒?582.4.3符号592.4.4小写o符号602.4.5特性602.4.6复杂性分析举例612.5实际复杂性662.6功能测量682.6.1选择实例的大小692.6.2设计测试数据692.6.3进行实验692.7参考及推荐读物74第二部分数据结构第3章数据描述753.1引言753.2线性表763.3公式化描述773.3.1基本概念773.3.2异常类NoMem793.3.3操作793.3.4评价833.4链表描述863.4.1类ChainNode和Chain863.4.2操作883.4.3扩充类Chain913.4.4链表遍历器类923.4.5循环链表933.4.6与公式化描述方法的比较943.4.7双向链表953.4.8小结963.5间接寻址993.5.1基本概念993.5.2操作1003.6模拟指针1023.6.1SimSpace的操作1033.6.2采用模拟指针的链表1063.7描述方法的比较1103.8应用1113.8.1箱子排序1113.8.2基数排序1163.8.3等价类1173.8.4凸包1223.9参考及推荐读物127第4章数组和矩阵1284.1数组1284.1.1抽象数据类型1284.1.2C++数组1294.1.3行主映射和列主映射1294.1.4类Array1D1314.1.5类Array2D1334.2矩阵1374.2.1定义和操作1374.2.2类Matrix1384.3特殊矩阵1414.3.1定义和应用1414.3.2对角矩阵1434.3.3三对角矩阵1444.3.4三角矩阵1454.3.5对称矩阵1464.4稀疏矩阵1494.4.1基本概念1494.4.2数组描述1494.4.3链表描述154第5章堆栈1615.1抽象数据类型1615.2派生类和继承1625.3公式化描述1635.3.1Stack的效率1645.3.2自定义Stack1645.4链表描述1665.5应用1695.5.1括号匹配1695.5.2汉诺塔1705.5.3火车车厢重排1725.5.4开关盒布线1765.5.5离线等价类问题1785.5.6迷宫老鼠1805.6参考及推荐读物188第6章队列1896.1抽象数据类型1896.2公式化描述1906.3链表描述1946.4应用1976.4.1火车车厢重排1976.4.2电路布线2016.4.3识别图元2046.4.4工厂仿真2066.5参考及推荐读物217第7章跳表和散列2187.1字典2187.2线性表描述2197.3跳表描述2227.3.1理想情况2227.3.2插入和删除2237.3.3级的分配2247.3.4类SkipNode2247.3.5类SkipList2257.3.6复杂性2297.4散列表描述2297.4.1理想散列2297.4.2线性开型寻址散列2307.4.3链表散列2347.5应用——文本压缩2387.5.1LZW压缩2397.5.2LZW压缩的实现2397.5.3LZW解压缩2437.5.4LZW解压缩的实现2437.6参考及推荐读物247第8章二叉树和其他树2488.1树2488.2二叉树2518.3二叉树的特性2528.4二叉树描述2538.4.1公式化描述2538.4.2链表描述2548.5二叉树常用操作2568.6二叉树遍历2568.7抽象数据类型BinaryTree2598.8类BinaryTree2608.9抽象数据类型及类的扩充2638.9.1输出2638.9.2删除2648.9.3计算高度2648.9.4统计节点数2658.10应用2658.10.1设置信号放大器2658.10.2在线等价类2688.11参考及推荐读物275第9章优先队列2769.1引言2769.2线性表2779.3堆2789.3.1定义2789.3.2最大堆的插入2799.3.3最大堆的删除2799.3.4最大堆的初始化2809.3.5类MaxHeap2819.4左高树2859.4.1高度与宽度优先的最大及最小左高树2859.4.2最大HBLT的插入2879.4.3最大HBLT的删除2879.4.4合并两棵最大HBLT2879.4.5初始化最大HBLT2899.4.6类MaxHBLT2899.5应用2939.5.1堆排序2939.5.2机器调度2949.5.3霍夫曼编码2979.6参考及推荐读物302第10章竞?30310.1引言30310.2抽象数据类型WinnerTree30610.3类WinnerTree30710.3.1定义30710.3.2类定义30710.3.3构造函数、析构函数及Winner函数30810.3.4初始化赢者树30810.3.5重新组织比赛31010.4输者树31110.5应用31210.5.1用最先匹配法求解箱子装载问题31210.5.2用相邻匹配法求解箱子装载问题316第11章搜索树31911.1二叉搜索树32011.1.1基本概念32011.1.2抽象数据类型BSTree和IndexedBSTree32111.1.3类BSTree32211.1.4搜索32211.1.5插入32311.1.6删除32411.1.7类DBSTree32611.1.8二叉搜索树的高度32711.2AVL树32811.2.1基本概念32811.2.2AVL树的高度32811.2.3AVL树的描述32911.2.4AVL搜索树的搜索32911.2.5AVL搜索树的插入32911.2.6AVL搜索树的删除33211.3红-黑树33411.3.1基本概念33411.3.2红-黑树的描述33611.3.3红-黑树的搜索33611.3.4红-黑树的插入33611.3.5红-黑树的删除33911.3.6实现细节的考虑及复杂性分析34311.4B-树34411.4.1索引顺序访问方法34411.4.2m叉搜索树34511.4.3m序B-树34611.4.4B-树的高度34711.4.5B-树的搜索34811.4.6B-树的插入34811.4.7B-树的删除35011.4.8节点结构35311.5应用35411.5.1直方图35411.5.2用最优匹配法求解箱子装载问题35711.5.3交叉分布35911.6参考及推荐读物363第12章图36512.1基本概念36512.2应用36612.3特性36812.4抽象数据类型Graph和Digraph37012.5无向图和有向图的描述37112.5.1邻接矩阵37112.5.2邻接压缩表37312.5.3邻接链表37412.6网络描述37512.7类定义37612.7.1不同的类37612.7.2邻接矩阵类37712.7.3扩充Chain类38012.7.4类LinkedBase38112.7.5链接类38212.8图的遍历38612.8.1基本概念38612.8.2邻接矩阵的遍历函数38712.8.3邻接链表的遍历函数38812.9语言特性38912.9.1虚函数和多态性38912.9.2纯虚函数和抽象类39112.9.3虚基类39112.9.4抽象类和抽象数据类型39312.10图的搜索算法39412.10.1宽度优先搜索39412.10.2类Network39512.10.3BFS的实现39512.10.4BFS的复杂性分析39612.10.5深度优先搜索39712.11应用39912.11.1寻找路径39912.11.2连通图及其构件40012.11.3生成树402第三部分算法设计方法第13章贪婪算法40513.1最优化问题40513.2算法思想40613.3应用40913.3.1货箱装船40913.3.20/1背包问题41013.3.3拓扑排序41213.3.4二分覆盖41513.3.5单源最短路径42113.3.6最小耗费生成树42413.4参考及推荐读物433第14章分而治之算法43414.1算法思想43414.2应用44014.2.1残缺棋盘44014.2.2归并排序44314.2.3快速排序44714.2.4选择45214.2.5距离最近的点对45414.3解递归方程46214.4复杂性的下限46314.4.1最小最大问题的下限46414.4.2排序算法的下限465第15章动态规划46715.1算法思想46715.2应用46915.2.10/1背包问题46915.2.2图像压缩47115.2.3矩阵乘法链47615.2.4最短路径48015.2.5网络的无交叉子集48315.2.6元件折叠48615.3参考及推荐读物491第16章回溯49216.1算法思想49216.2应用49616.2.1货箱装船49616.2.20/1背包问题50316.2.3最大完备子图50616.2.4旅行商问题50816.2.5电路板排列510第17章分枝定界51617.1算法思想51617.2应用51917.2.1货箱装船51917.2.20/1背包问题52617.2.3最大完备子图52817.2.4旅行商问题52917.2.5电路板排列532
2019/2/11 7:56:36 11.23MB 数据结构
1
个人辛苦编写的PSO粒子群优化算法python程序代码,将适应度值计算部分更换成自己要优化的内容,稍加调试即可运行。
粒子群优化算法(PSO:Particleswarmoptimization)是一种进化计算技术(evolutionarycomputation)。
源于对鸟群捕食的行为研究。
粒子群优化算法的基本思想:是通过群体中个体之间的协作和信息共享来寻找最优解。
PSO的优势:在于简单容易实现并且没有许多参数的调理。
目前已被广泛应用于函数优化、神经网络训练、模糊系统控制以及其他遗传算法的应用领域。
2017/8/8 9:37:48 3KB python 算法 开发语言 粒子群
1
通过ANN的计算,我们在处理文章的词汇计算中可以得到一些通用的信息集合,比如文章的敏感度,意识,作者的精神形态,动机,作者当时的多语言环境因素等等,为什么可
2018/8/25 11:48:25 649KB 算法
1
matlab简单图像处理代码3D-connect-component-label-with-GPUThisismy3Dparallelalgorithm,butitisnotperfect.Itprovidesawayforyoutooptimizeit.Ihopesomeonecangiveagoodopinion???由于医学项目中需要实现3D连通域算法,matlab有自带的3D连通域算法,挺快的???但是要实现c++版本,2d连通域实现的算法思路上就是twopassmethod,???当时我为了快速实现,就直接写了一个广度搜索的3d连通域算法???于是,我想能不能实现一个并行的3D连通域算法呢,于是我google,发现了几篇很好的withgpu的2DCCL,但并没有3DParallel,发现主要思想还是twopassmethod,不过因为并行,所以需要考虑每个像素点的独立,在这里进行了处理论文分别是:????ParallelgraphcomponentlabellingwithGPUs
2019/1/6 1:36:31 45KB 系统开源
1
某18楼的居民楼,每个单元是两梯两户。
电梯有一个默认设置:①在某楼按电梯时,左右两部电梯经过等楼层到达时,默认左边的执行任务。
②若两部电梯到达用户所需层次经过的路程不同,则默认选择路程少的那一部。
现设计一个数学模型完成如下任务:(1)这个居民楼的一个单元的两部电梯,在一年内的工作量能否有明显差异:(2)如果想两部电梯在一段时间内的工作量有显著差异,采取什么措施平衡差异,并分析结论主要通过蒙特卡洛算法的思想对问题进行解决
1
Java编程思想源代码及课后练习代码,因为本人从网上找起来特别麻烦,所以找到后分享下,希望能帮到需要的人吧,只是这个这个资源分为啥不能是零啊
2020/4/18 6:42:04 682KB Java编程思想
1
计算思想实验教程源代码.zip
2015/2/21 1:58:18 24KB 代码
1
房哨房产管理系统源码是首家100%开源可定制的房产系统管理软件,永久免费,房产网站CMS建站,PHPMysql数据库,手机、电脑、微信、Pad同步使用,四网合一、提高工作效率、操作简单。
房哨房产管理系统源码v1.4.2更新日志1、处理了选项配置检索与操作时可能会报错的问题。
房哨房产管理系统源码详细介绍开源可定制房产ERP处理方案功能完善的房源客源管理,同时提供完备的办公、财务、决策分析方案,内外一体全面打通;
完全开放的源码,您可以自由掌控,任意开发您的专属功能;
无店面和用户数限制,一次买断,永久使用;
安全掌控您的软件服务器,隐私数据自己掌控,开单大师,为每家中介提供真正属于自己的定制软件。
整合微信平台:接力微信,快速分享。
内网管理ERP:功能全面,使用不同运营需求。
房客源管理:内外网同步,一站打通。
一体化外网同步设计思想:平台上搭建全部业务模块,不论是标准产品还是个性研发都遵循规范要求,包括取数规则,交互方式,界面样式和美工风格都全部有统一化标准。
房哨房产管理系统源码产品特色技术方案成熟稳定,支持各类房产中介业务场景,平台集成内外网平台应用系统,帮您一站式快速搭建专属的房产中介平台。
房源管理:支持网络多门店,多人联网系统工作。
中介网站无缝集成和微站无缝集成,提升中介门店服务能力,更高效。
权限和设置:各种角色和权限设置,不限门店,员工数量。
可灵活设置每一位经纪人的权限,认证机器,可限制经纪人只能在门店内电脑登录。
全新智能激励辅助运营:根据个人业务动作所占成交比例预知业绩金额,发挥经纪人主观能动性,加速成交进程!移动端应用:特色移动端应用,方便快捷查询管理。
实时数据更新,事件准时提示。
让您随心掌握,想改就改。
微信分享:经纪人可对自己的订单进行评价和分享,也可在微商城、圈子等多频道进行分享。
强大的财务报表分析中心:大数据智能分析业绩数据,了解业绩走势。
门店损益状况一目了然,让门店运营状况尽在您的眼中!在线客服:经纪人与客户随时沟通,轻松处理客户疑问,不在受疑难杂症的烦恼。
三大日志辅助运营:三大日志相辅相成,让一切尽在掌握,为您的数据安全提供优质的保护。
定制开发:房哨为不同的要求,提供最适合的定制化处理方案。
除了以上特性,我们还用心为您准备了更多的贴心功能等待您的发现……房哨房产管理系统源码常见问题1、开源可定制是什么意思软件代码开放,懂技术的可以自己调整或者新增功能,如果自己对技术不太懂可以联系我们公司给您定制您需要的功能2、房哨只能用于房产运营吗房哨是针对房产运营开发的版本,可以多中介一起使用客户端,运营端进行管理,也可以单公司使用,除了房哨外还有针对其他房产开发的ERP管理系统,如果您需要其他行业的软件我们也可以给您定制开发3、房哨如何安装解压压缩包后有一个名为房哨1.4.0学习版的文件夹,打开文件夹中的1.4.0使用说明,里面有详细的安装步骤房哨房产管理系统源码截图相关阅读同类推荐:站长常用源码
2017/6/22 8:18:36 11.62MB Php源码-人才房产
1
针对用电过程中的盗电窃电问题,基于数据挖掘的思想提出了一种自动检测窃电行为的方法。
通过分析用户用电数据的特点,在循环神经网络(RNN)算法的基础上引入长短期记忆单元(LSTM),通过输入门、输出门与遗忘门等函数选择性地保留记忆单元的输入输出信息,改善算法训练时的梯度消失现象。
将RNN网路改进为并行化网络,将长时间序列的输入特征向量进行片段化处理,克服RNN网络在处理长序列时的信息丢失缺点。
使用国家电网的公开数据集进行仿真实验。
结果表明,在相同的时间复杂度下,相较于传统RNN网络,改进算法对窃电行为的识别精度提升到了92.85%,模型的交叉熵损失下降为0.253,AUC增长至0.871,算法的综合功能显著提升。
2021/9/2 6:54:54 1.41MB RNN 数据挖掘 防窃电 智能电网
1
以工程化思想构建新一代网络安全框架
1
共 824 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡