
理论基础——线性表
Alex_McAvoy
想要成为渔夫的猎手
展开
-
理论基础 —— 线性表
【逻辑结构】 线性表是零或多个数据元素组成的有限序列,其中,数据元素的个数定义为线性表的长度,当长度为 0 时称为空表,反之称为非空表。 一个非空表常记为:,其中 ai 是表中的第 i 个数据元素,表中的 领先于,领先于,称是的直接前驱元素,是的直接后继元素。当时,有且只有一个直接后继;当时,有且只有一个直接前驱。 【顺序存储结构】 1.概述 线性表...原创 2019-03-08 17:25:53 · 672 阅读 · 0 评论 -
理论基础 —— 线性表 —— 双向链表
【实现类】 template <class T> struct Node{//结点 T data;//数据域 Node *llink;//左指针 Node *rlink;//右指针 }; template <class T> class doubleList{ private: Node<T> *first;//头指针 p...原创 2019-03-14 13:42:33 · 447 阅读 · 0 评论 -
理论基础 —— 线性表 —— 循环链表
【概述】 循环链表的构建与单链表十分相似,唯一不同的是,对于链表的表尾,需要将原来的 NULL 改为 first 以下仅给出构造函数的实现 【构造函数】 1.无参构造函数 生成一个头结点,让头指针指向头结点,并将头结点的指针域指向头指针。 template <class T> linkList<T>::circleList(){//无参构造函数 f...原创 2019-03-14 13:40:55 · 398 阅读 · 0 评论 -
理论基础 —— 线性表 —— 单链表
【实现类】 单链表的基本思想就是用指针表示结点之间的逻辑关系,因此要正确的对指针变量、指针、指针所指结点、结点的值进行区分。 设 p 是一个指针变量,则 p 的值是一个指针,若指针p 指向某个 Node 类型的结点,则该结点用 *p 来表示,并称*p 为结点变量,有时为了叙述方便,常将 " 指针变量 " 称为 " 指针 ",将 " 指针 p 所指的结点 " 称为 " 结点 p "。 在单...原创 2019-03-09 11:12:54 · 1259 阅读 · 0 评论 -
理论基础 —— 线性表 —— 顺序表
【实现类】 const int maxSize=100;//存储空间初始分配量 template <class T> class SeqList{ private: T data[maxSize];//存放数据元素的数组 int length;//顺序表的长度 public: SeqList();//无参构造函数 SeqList(T a[],int ...原创 2019-03-09 10:41:14 · 630 阅读 · 0 评论