广义表其实是线性表的一种推广,也属于多重链表,他的元素不仅可以是一个单元素也可以是一个广义表。本文介绍 广义表的存储结构和解析union 广义表的存储结构 typedef struct GNode *GList; struct GNode { int Tag; // 标志域, 0表示节点是单元素,1 ...
分类:
其他好文 时间:
2020-06-29 18:26:58
阅读次数:
55
查找 线性表 一、顺序查找 (一)数据类型定义 typedef struct { KeyType key; //关键字域 InfoType otherinfo; //其他域 }ElemType; View Code (二)顺序表定义 typedef struct { ElemType *R; //存 ...
分类:
其他好文 时间:
2020-06-29 00:49:36
阅读次数:
87
第七章首先介绍了和查找相关的概念和术语。查找表是由同一类型的数据元素构成的集合。关键字是数据元素中某个数据项的值。在查找的同时对表做修改操作,相应的表称之为动态查找表,否则称为静态查找表。平均查找长度是为确定记录在查找表中的位置,需和给定值进行比较的关键字个数的期望值。然后讲了线性表的三种查找方法: ...
分类:
其他好文 时间:
2020-06-29 00:45:10
阅读次数:
95
查找操作:查询、检索、插入、删除 1)顺序查找: ①一般线性表的顺序查找:从线性表的一端开始,逐个检查关键字是否满足给定的条件。若查找到某个元素的关键字满足给定条件,则查找成功,返回该元素在线性表中的位置;若已经查找到表的另一端,还没有查找到符合给定条件的元素,则返回查找失败的信息。 ②有序表的顺序 ...
分类:
其他好文 时间:
2020-06-28 22:41:14
阅读次数:
60
/* 4.11 队列的抽象数据类型 ADT 队列(Queue) Data 同线性表。元素具有相同腐乳类型,相邻元素具有前驱和后继关系。 operation InitQueue(*Q) //初始化操作,建立一个空队列Q。 DestoryQueue(*Q) //若队列Q存在,则销毁它。 ClearQue ...
分类:
其他好文 时间:
2020-06-28 22:32:03
阅读次数:
77
本章学习了几种查找的方法,顺序查找、折半查找、二叉排序树查找、哈希表。 对于几种查找的特点,顺序查找的算法简单但是查找效率低,折半查找对结构要求高,同时查找效率也高,二叉排序树查找的数据结构采用二叉链表,删除和插入操作只需要移动指针。 线性表的查找介绍了顺序查找、折半查找、分块查找。 顺序查找比较简 ...
分类:
其他好文 时间:
2020-06-28 22:24:15
阅读次数:
51
一、基本概念: 1、 列表:待搜索的数据集合。 2、 关键字:要查找的那个数据。 3、 查找:一种算法过程。 二、基于线性表的查找: 1、 顺序查找: (1)思想:逐个比较,直到找到或者查找失败。 (2)时间复杂度:T(n) = O(n)。 (3)空间复杂度:S(n) = O(n)。 2、 折半查找 ...
分类:
其他好文 时间:
2020-06-28 20:12:55
阅读次数:
42
线性表: 定义:由零个或多个数据元素组成的有限序列。 首先他是一个序列,也就是说元素之间是有先来后到 若元素存在多个,则第一个元素无前驱,最后一个元素无后继,其他元素有且只有一个前驱和后继 另外,线性表强调是有限的。 数学语言的定义: 若将线性表记为(a1,...,ai-1,ai,ai+1,...a ...
分类:
编程语言 时间:
2020-06-28 18:41:43
阅读次数:
66
1、心得体会:在第七章的学习当中,主要是对查找这一操作的深入学习,主要操作对象为线性表、树表和散列表。 查找,主要有顺序查找、折半查找、分块查找。 一、线性表查找 11、 顺序查找方法既适用于线性表的顺序存储结构,又适用千线性表的链式存储结构。 在顺序查找中,有一个很有技巧的设置,在对当前位置的关键 ...
分类:
其他好文 时间:
2020-06-28 12:30:13
阅读次数:
76
题目:线性表中的元素递增有序且按照顺序存储在计算机中,要求设计一种算法在最少时间内查找到数值为X的元素,若找到则将其与后继元素位置交换,若找不到则将其插入表中使表中元素仍递增有序 分析:要求最少时间则采用折半查找,分为递归和循环两种。若找到元素后该元素位置为最后一个则不做处理,若找不到该元素后插入该 ...
分类:
编程语言 时间:
2020-06-28 09:31:56
阅读次数:
65