- 博客(8)
- 收藏
- 关注
原创 C++数据结构第25课、静态单链表的实现
单链表的一个缺陷— 触发条件长时间使用单链表对象频繁增加和删除数据元素— 可能的结果堆空间产生大量的内存碎片,导致系统运行缓慢新的线性表静态单链表的继承层次静态单链表的实现思路— 通过模板定义静态单链表类(StaticLinkList)— 在类中定义固定大小的空间(unsigned char[])— 重写 create 和 destroy 函数,改变内存的分配和归还方式— 在 Node 类中重载 operator new ,用于指定内存上创建对象编程实验..
2020-07-02 16:25:45 214
原创 C++数据结构第24课、单链表的遍历和优化
问题如何遍历单链表中的每一个数据元素当前单链表的遍历方法 LinkList<int> list; for(int i = 0;i < 5;i++) { list.insert(0, i); } for(int i = 0;i < list.length();i++) { cout << list.get(i) << endl; }遗憾的是:我们不能以线性的时间复.
2020-07-02 16:25:05 1141
原创 C++数据结构第23课、顺序表和单链表的对比分析
问题如何判断某个数据元素是否存在于线性表中?遗失的操作— find— 可以为线性表(List)增加一个查找的操作— int find(const T& e)const1、参数 待查找的的数据元素2、返回值 如果返回值 >= 0:数据元素在线性表中第一次出现的位置 如果返回值 = -1 :数据元素不存在 数据元素查找示例:Object.h#ifndef OBJECT_H#define OBJECT_H#include <cstdlib>n.
2020-07-02 16:24:09 253
原创 C++数据结构第22课、单链表的具体实现
1、课程目标— 完成链式存储结构线性表的实现LinkList 设计要点— 类模板,通过头结点访问后继节点— 定义内部结点类型 Node,用于描述数据域和指针域— 实现线性表的关键操作(增,删,查,等)LinkList 的定义LinkList 的实现:#ifndef LINKLIST_H#define LINKLIST_H#include "List.h"#include "Exception.h"#include "Object.h"namespace DTLib{
2020-07-01 22:54:38 236
原创 C++数据结构第21课、线性表的链式存储结构
1、存在的问题顺序存储结构线性表的最大问题是:插入和删除需要移动大量的元素,如何解决这个问题?2、线性表的链式存储结构链式存储的定义:数据元素除了存储本身的信息外,还要存储其直接后继的信息在物理内存中无相邻关系链式存储逻辑结构— 基于链式存储结构的线性表中,每个结点都包含数据域和指针域数据域:存储数据元素本身指针域:存储相邻结点的地址3、专业术语的统一— 顺序表 基于顺序存储结构的线性表 — 链表 基于链式存储结构的线性表4、链表中的基本概念— 头结点
2020-07-01 22:53:51 297
原创 C++数据结构第20课、数组类的创建(下)
课程目标— 完成 DynamicArray 类的具体实现DynamicArray 设计要点— 类模板 动态确定内部数组空间的大小 实现函数返回数组长度 拷贝构造和赋值操作DynamicArray 类的声明DynamicArray.h#ifndef DYNAMICARRAY_H#define DYNAMICARRAY_H#include "Array.h"namespace DTLib{template<typename T>class Dynami.
2020-07-01 10:21:47 241
原创 C++数据结构第19课、数组类的创建(上)
课程目标— 完成 Array 类的具体实现— 完成 StaticArray 类的具体实现需求分析— 创建数组类代替原生数组的使用 数组类包含长度信息 数组类能够主动发现越界访问Array 设计要点— 抽象类模板,存储空间的位置和大小由子类完成— 重载数组操作符,判断访问下标是否合法— 提供数组长度的抽象访问函数— 提供数组对象间的复制Array 类的声明Array.h#ifndef ARRAY_H#define ARRAY_H#include "O..
2020-07-01 10:21:01 772
原创 C++数据结构第18课、顺序存储线性表的分析
效率分析问题分析:不能这样比,要根据 T 来决定下面的代码正确吗?为什么?分析:对于容器类型的类,可以考虑禁用拷贝构造和赋值操作下面的代码正确吗?为什么?分析:顺序存储结构线性表提供了数组操作符的重载,通过重载能够快捷方便的获取目标位置处的数据元素,在具体的使用形式上类似数组,但是由于本质不同,不能代替数组使用小结— 顺序存储线性表的插入和删除操作存在重大效率隐患— 线性表作为容器类,应该避免拷贝构造和拷贝赋值— 顺序存储线性表可能被当成数组误用..
2020-07-01 09:40:44 156
GTM_ATOM_PWM_DTM_Synchronize_KIT_TC364_TRB.zip
2024-06-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人