知识大全 数据结构之顺序表上基本运算的实现[3]

Posted 元素

篇首语:当生活如同炼狱,必须自己创造阳光。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 数据结构之顺序表上基本运算的实现[3]相关的知识,希望对你有一定的参考价值。

   求顺序表的长度

  求顺序表的长度是在顺序表存在的情况下 顺序表中元素的个数 首先判断顺序表是否存在 若存在返回length 若不存在返回 具体算法描述如下

  int Length_SeqList (PSeqList SeqListPoint)

   /*求顺序表的长度 入口参数 为顺序表指针 返回表长 表示 表不存在*/

  if (SeqListPoint)

  return (SeqListPoint > length) ;

  return ( );

  

  算法

   顺序表的检索操作

  顺序表的检索是在表存在的情况下 查找值为x的数据元素 若成功 返回在表中首次出现的值为x的那个元素的序号(不是下标);未找到值为x的数据元素 返回 表示查找失败 在顺序表中完成该运算最简单的方法是 从第一个元素e 起依次和x比较 直到找到一个与x相等的数据元素 返回它在顺序表中的data数组的下标+ (第一个元素存放在data[ ]);或者查遍整个表都没有找到与x相等的元素 返回 具体算法描述如下

  int Location_SeqList (PSeqList SeqListPoint DataType x)

cha138/Article/program/sjjg/201311/23648

相关参考

知识大全 数据结构之顺序表上基本运算的实现[10]

  具体算法描述如下  intDelete_SeqList(PSeqListSeqListPointinti)  /*顺序表删除入口参数顺序表指针删除元素位置  返回标志表示成功表示删除位置不合法表示

知识大全 数据结构之顺序表上基本运算的实现[9]

  例如图表示在一个顺序表中删除一个元素的前后变化过程原表长为删除第个元素E在删除后为了满足顺序表的先后关系必须将第个到第个元素(下标位~)前移移一位  >  图顺序表的删除操作示意图  在顺序表上完

知识大全 数据结构之顺序表上基本运算的实现[4]

  /*顺序表检索入口参数为顺序表指针检索元素  返回元素位置表示表不存在表示查找失败*/  inti=;  if(!SeqListPoint)    printf(表不存在);  return();

知识大全 数据结构之顺序表上基本运算的实现[2]

  顺序表的销毁  顺序表使用完后必须要销毁否则可能会造成内存资源浪费等问题顺序表的销毁操作实际上是初始化操作的逆运算由于要修改顺序表的指针变量所以要将指针地址传给该函数首先判断要销毁的表是否存在然后

知识大全 数据结构之顺序表上基本运算的实现[1]

  顺序表的初始化  顺序表的初始化即构造一个空表要返回该线性表所以将返回一个指向顺序表的指针首先动态分配存储空间然后将表中length置为表示表中没有数据元素具体算法描述如下  PSeqListIn

知识大全 数据结构之顺序表上基本运算的实现[7]

  return();/*表不存在不能插入*/    if(SeqListPoint>length>=MAXSIZE)    printf(表溢出);  return();/*表空间已满不

知识大全 数据结构之顺序表上基本运算的实现[8]

  算法  顺序表的插入运算时间主要消耗在了数据的移动上在第i个位置上插入x从ei到en都要向下移动一个位置共需要移动ni+个元素设在第i个位置上作插入的概率为Pi则平均移动数据元素的次数  >  由

知识大全 数据结构之顺序表上基本运算的实现[16]

  w=josephus_seq>data[s];  printf(%d\\tw)  Delete_SeqList(josephus_seqs+);/*删除出列元素*/  /*for*/  re

知识大全 数据结构之顺序表上基本运算的实现[11]

  算法  删除算法的时间性能分析  与插入运算相同其时间主要消耗移动在表中元素上删除第i个元素时其后面的元素ai+~an都要向上移动一个位置共移动了ni个元素所以平均移动数据元素的次数为  >  由

知识大全 数据结构之顺序表上基本运算的实现[12]

  顺序表应用举例  【例】有一线性表的顺序表示(aa…an)设计一算法将该线性表逆置成逆线性表(anan…a)要求用最少的辅助空间  解题思路可考虑将a与an交换a与an交换……ai与ani+交换其