上一页 1 ··· 43 44 45 46 47 48 49 50 51 ··· 56 下一页
摘要: 线性表是用来以线性的方式组织元素的,是一个逻辑结构。线性表组织数据需要一定的存储单元。 顺序存储的定义: 顺序存储在C++中就可以考虑用一个固定大小的数组来作为存储介质。 设计思路: 顺序存储结构的元素获取操作: 顺序存储结构的插入操作: 顺序存储结构的插入示例: 顺序存储结构的删除操作: 顺序存储 阅读全文
posted @ 2018-08-19 14:50 周伯通789 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 线性表(List)的表现形式: 零个或者多个数据元素组成的集合 数据元素在位置上是有序排列的 数据元素的个数是有限的 数据元素的类型必须相同 线性表的抽象定义: 线性表的性质: a0为线性表的第一个元素,只有一个后继 an-1为线性表的最后一个元素,只有一个前驱 除了a0和an-1外,其他的元素ai 阅读全文
posted @ 2018-08-19 13:55 周伯通789 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 前几节我们开发的智能指针类和异常类族并没有继承自Object,现在我们需要将它们进行整合,作为DTLib这个类库的基础设施。整合的时候需要遵循现代软件的架构模式。 遵循经典设计准则 DTLib中所有类位于单一继承树,可以根据下图中的方式进行整合: 在异常类族中有了新的成员InvalidOperati 阅读全文
posted @ 2018-08-19 12:15 周伯通789 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 我们学习数据结构,为什么要创建顶层父类呢? 我们的目标是创建一个可复用的数据结构类库,可复用指的就是在不同的工程里面,我们可以使用本次创建的数据结构库,在不同的编译器、不同的工程、不同的背景下使用这个库都是可以的。既然涉及到了工程应用,我们就需要考虑在当今的软件架构方法中是如何创建一个库的。 当代软 阅读全文
posted @ 2018-08-19 10:37 周伯通789 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 当代C++库基本上都会使用C++里面的异常特性,依赖于异常特性所创建的库的稳定性是非常好的。因此,我们创建的库也要引入异常类族。本节中,我们就给DTLib添加异常类族。 异常的类型可以是自定义的类类型 对于类类型的异常的匹配依旧是自上而下的严格匹配 赋值兼容性原则在异常匹配中依然适用 一般而言 匹配 阅读全文
posted @ 2018-08-19 08:06 周伯通789 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 异常不是错误,异常是程序中可预料到的另一条执行分支,是可预见的。错误是不可预料的。 C++内置了异常处理的语法元素try...catch...,如下: C++通过throw语句抛出异常信息: 上图中throw 0抛出异常后,程序就立即返回了。return代表正常的返回,throw代表异常的返回值。 阅读全文
posted @ 2018-08-18 20:51 周伯通789 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 智能指针在开发中无处不在,智能指针就是用C++模板技术实现的一个类。 智能指针历史:为了解决内存泄漏 使用智能指针: 智能指针的设计方案: 通过类模板描述指针的行为 能够定义不同类型的指针对象 重载指针特征操作符(->和*) 利用对象模拟原生指针的行为 对象在生命周期结束的时候会调用析构函数,然后在 阅读全文
posted @ 2018-08-18 17:25 周伯通789 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 数据结构课程的特点: 专注于数据元素之间的关系 专注于特定结构之上的算法 数据结构课程并不关注数据元素的具体类型 既然数据结构只关心数据元素之间的关系,我们只需要抽象的考虑数据元素之间的关系以及算法,不用关心具体的数据类型,因此,支持泛型编程的语言最适合数据结构的学习。因此,我们重点关注C++中的模 阅读全文
posted @ 2018-08-18 01:43 周伯通789 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 数据结构该如何学习: 阅读全文
posted @ 2018-08-18 01:17 周伯通789 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 常见的时间复杂度如下: 常见的时间复杂度的比较: 实例分析: 从上图的分析中,最坏的情况更具有现实的意义。 当算法在最坏的情况下仍能满足需求时,可以推断,算法的最好情况和平均情况都满足要求。 在数据结构课程中,在没有特殊说明时,所分析算法的时间复杂度都是指最坏时间复杂度。 算法的空间复杂度: 空间复 阅读全文
posted @ 2018-08-18 00:15 周伯通789 阅读(246) 评论(0) 推荐(0) 编辑
上一页 1 ··· 43 44 45 46 47 48 49 50 51 ··· 56 下一页