线性表的定义和操作

线性表的定义

       线性表是具有相同数据类型的n(n>=0)个数据元素的有限序列,其中n为表长,当n=0时线性表是一个空表。若用L命名线性表,则其一般表示为 L = (a1,a2,...ai,ai+1,...an)

几个概念:

      相同是指每个数据元素所占空间一样大。

     ai 是线性表中的 “第i个“ 元素线性表中的位序,位序从1开始,数组下标从0开始,位序比下标多1。

     ai表头元素;an表尾元素

     除第一个元素外,每个元素有且仅有一个直接前驱;除最后一个元素外,每个元素有且仅有一个直接后继

 

线性表的基本操作

    InitList(&L): 初始化表。构造一个空的线性表L,分配内存空间

    DestroyList(&L): 销毁操作。销毁线性表,并释放线性表L所占用的内存空间。

    ListInsert(&L,i,e): 插入操作。在表L中的第i个位置上插入指定元素e。

    ListDelete(&L,i,&e): 删除操作。删除表L中第i个位置的元素,并用e返回删除元素的值。

    LocateElem(L,e): 按值查找操作。在表L中查找具有给定关键字值的元素。

    GetElem(L,i): 按位查找操作。获取表L中第i个位置的元素的值。

其他常用操作:

   Length(L): 求表长。返回线性表L的长度,即L中数据元素的个数。

   PrintList(L): 输出操作。按前后顺序输出线性表L的所有元素值。

   Empty(L): 判空操作。若L为空表,则返回true,否则返回false。

Tips:

   1,对数据的操作(记忆思路)---创销,增删改查

   2,C语言函数的定义--- <返回值类型> 函数名 (<参数1类型> 参数1,<参数2类型> 参数2,.......)

   3,实际开发中,可根据实际需求定义其他的基本操作

   4,函数名和参数的形式,命名都可改变,命名要有可读性

   5,什么时候要传入引用 “ & “ ---对参数的修改结果需要 “ 带回来

为什么要实现对数据结构的基本操作?

  1,团队合作编程,你定义的数据结构要让别人能够很方便的使用(封装)

  2,将常用的操作/运算封装成函数,避免重复工作,降低出错风险

 
内容来源于网络如有侵权请私信删除

文章来源: 博客园

原文链接: https://www.cnblogs.com/romantichuaner/p/17553816.html

你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!