定义顺序表的结构 用数组来模拟顺序表的保存形式,在顺序表中还需定义一个变量,用来保存顺序表中已有元素的数量。 typedef struct//定义顺序表结构 { DATA ListData[MAXSIZE+1]; //保存顺序表的数组 int ListLen; //顺序表已存节点的...
分类:
其他好文 时间:
2015-08-05 18:08:02
阅读次数:
144
define MAX_ARRAY_DIM 8//假设数组维数的最大值为8typedef int ElemType;struct Array
{
ElemType * base;//数组元素基址,由InitArray分配
int dim;//数组维数
int * bounds;//数组维界基址,由InitArray分配
int * constants;//数组...
分类:
编程语言 时间:
2015-08-05 10:41:58
阅读次数:
119
3. 蛤蟆的数据结构进阶三静态查询之折半查询
本篇名言:“但是话不行,要紧的是做。 --
鲁迅”
继续来看静态查询的折半查询。
欢迎转载,转载请标明出处:
1. 折半查找
折半查找要求查找表用顺序存储结构存放且各数据元素按关键字有序(升序或隆序)排列,也就是说折半查找只适用于对有序顺序表进行查找。
折半查找的基本思想是:首先以整个查找表作为查找范围,用查找条件中...
分类:
其他好文 时间:
2015-08-02 23:24:18
阅读次数:
138
一个线性表是由n个数据元素构成的有限序列,其特点是数据元素之间存在着线性关系。在计算机中表示这种关系的两种不同存储结构是顺序存储结构和链式存储结构。
1、顺序表
顺序表是在内存中用一组地址连续的存储单元依次存储线性表的数据元素,借助数组来实现。顺序表中数据元素的逻辑关系通过其“存储位置相邻”来表示。
对于顺序表,主要有初始化、建立、销毁、插入、删除、按值查找、等基本操作。插入和...
分类:
其他好文 时间:
2015-08-02 01:06:54
阅读次数:
133
例一:将顺序表La=(a1,a2,a3,…..an)逆置。
解:要想将La逆置,只需要将第一个元素与最后一个交换,第二个和倒数第二个交换,以此类推,直到没有元素发生交换。算法描述如下:void contrary_Sq(SqList &la){
int temp;
for(i=0;i<La.length/2;i++){
temp=La.elem[i];...
分类:
其他好文 时间:
2015-08-01 01:12:42
阅读次数:
220
2、蛤蟆的数据结构进阶二静态查询之顺序查询
本篇名言:“我从不把安逸和快乐看作是生活的本身 --
这种伦理基础,我叫它猪栏的理想。 --
爱因斯坦”
这篇我们来看下静态查询中的顺序表查询。
我们先来看下概念,然后是代码实现。
欢迎转载,转载请标明出处:
1. 查找
在计算机科学中定义为:在一些(有序的/无序的...
分类:
其他好文 时间:
2015-07-31 22:01:36
阅读次数:
135
经过数据结构(二)系列文章,已经把线性结构中最常用的数据结构进行了介绍,包括顺序存储结构中顺序表、顺序队列和顺序栈,链式存储结构中的链表、链栈和链队列。线性结构是数据结构中最为常见也最简单的逻辑结构。下面将进入非线性逻辑的数据结构部分,还记得下面的一副数据结构的分类图吧,对于非线性逻辑,主要介绍树和图。本文主要先针对树进行复习和总结,后续的博文将逐渐深入到图等更为复杂的非线性逻辑数据结构。
...
分类:
其他好文 时间:
2015-07-29 14:03:31
阅读次数:
171
查找:所谓查找就是在数据集合中寻找满足某种条件的数据元素。1. 二分查找1.1 二分查找的定义二分查找也属于顺序表查找范围,二分查找也称为折半查找。二分查找(有序)的时间复杂度为O(LogN)。那么什么是二分查找呢?二分查找的基本思想是, 在有序表中,取中间记录作为比较对象,若给定值与中间记录的关键字相等,则查找成功;若给定值小于中间记录的关键字,则在中间记录的左半区继续查找;若给定值大于中间记录的...
分类:
编程语言 时间:
2015-07-27 18:55:46
阅读次数:
125
上一篇博文中主要总结线性表中的链式存储结构实现,比如单向链表、循环链表,还通过对比链表和顺序表的多项式的存储表示,说明链表的优点。可以参看上篇博文http://blog.csdn.net/lg1259156776/article/details/47018813
下面先对没有介绍的链表中的双链表进行介绍,并通过稀疏矩阵的三元组的链式结构来深入理解较为复杂的链表存储结构。最后对三次博文所讲述的内容...
分类:
其他好文 时间:
2015-07-27 01:56:56
阅读次数:
175