博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++实战数据结构与算法-第4节线性表的定义
阅读量:4144 次
发布时间:2019-05-25

本文共 866 字,大约阅读时间需要 2 分钟。

  • 线性表的定义
  1. 线性表就是零个或者多个相同数据元素的有序列。
  2. 线性表的表示方式
  3. 线性表L可用二元组形式描述:

         L=(D,R)  //线性表=(数据+结构)

         线性表具有前驱和后驱关系

     4.线性表的实例

       设有一个顺序表L={1,2,3,4,5,6},它们的关系图如下

 

     5.使用二元组描述L=(D,R),则

         D={1,2,3,4,5,6} (n=6)

         R={<1,2><2,3>,<3,4>,<4,5>,<5,6>}

 

     6.线性表特征如下

        A、对非空表,A0是表头,无前驱。

        B、An-1是表尾,无后继。

        C、其他每个元素Ai有且仅有一个直接前驱和一个后继。

     7、线性表的基本运算

       A、建立一个空表CrealeLint(L).

       B、置空表:ClearList(L).

       C、判断表是否为空EmptyList(L). true(1)、false(0)

       D、求表长Length(L).

       E、取表中的元素GetList(L).

       F、定位运算:Locate(L,x).

      G、插入:Insert(L,x,i),它分为插入前和插入后

      H、删除:Delete(L,i)

      I、线性表其他内容:合并、拆分、复制、排序和遍历

 

   8.线性表算法描述

void Union(list la,list lb){

       int i,k;data_t x;
       for(i=0;i<Length(lb);i++){
               x = GetList(lb,i);
               k = Locate(la,x);
               if(k == -1){
                  Insert(la,x,Length(la));
               }
       }
}

 

    9.线性表的去重运算

void Purge(list L){

       int i = 0,j;
       data_t x,y;
       while(i<Length(L)-1)
       {
               X = GetList(L,i);
               j = i + 1;
               while(j<Length(L))
               {
                       y = GetList(L,j);
                       if(y == x){
                         Delete(L,j);
                       }else{
                         j++;
                       }
                       i++;
               }
       }
}

 

10.总结第四节

 

转载地址:http://ocuti.baihongyu.com/

你可能感兴趣的文章
git中文安装教程
查看>>
虚拟机 CentOS7/RedHat7/OracleLinux7 配置静态IP地址 Ping 物理机和互联网
查看>>
Jackson Tree Model Example
查看>>
常用js收集
查看>>
如何防止sql注入
查看>>
springmvc传值
查看>>
在Eclipse中查看Android源码
查看>>
Android使用webservice客户端实例
查看>>
[转]C语言printf
查看>>
C 语言 学习---获取文本框内容及字符串拼接
查看>>
C 语言学习 --设置文本框内容及进制转换
查看>>
C 语言 学习---判断文本框取得的数是否是整数
查看>>
C 语言 学习---ComboBox相关、简单计算器
查看>>
C 语言 学习---ComboBox相关、简易“假”管理系统
查看>>
C 语言 学习---回调、时间定时更新程序
查看>>
C 语言 学习---复选框及列表框的使用
查看>>
第十一章 - 直接内存
查看>>
JDBC核心技术 - 上篇
查看>>
一篇搞懂Java反射机制
查看>>
Single Number II --出现一次的数(重)
查看>>