zoukankan      html  css  js  c++  java
  • 线性表的抽象数据类型描述

    代码如下

     1 //抽象数据类型线性表的定义
     2 #include <studio.h>
     3 /*-------------------初始化线性表-----------------------*/
     4 void InitList(SqList *&L)
     5 {
     6     L=(SqList*)malloc(sizeof(SqList));
     7     L->length=0;
     8 }
     9 /*--------------------销毁线性表,释放内存空间----------------------*/
    10 void DestroyList(SqList *&L)
    11 {
    12     free(L);
    13 }
    14 /*------------判断线性表是否为空表,空表返回真,否则返回假---------------*/
    15 bool ListEmpty(SqList *L)
    16 {
    17     return(L->length=0);
    18 }
    19 /*-------------------求线性表的长度-----------------------*/
    20 int ListLength(SqList *L)
    21 {
    22     return(L->length);
    23 }
    24 /*--------------------输出线性表----------------------*/
    25 void DispList(SqList *L)
    26 {
    27     int i;
    28     for(i=0;i<L->length;i++)
    29         printf("%d",L->data[i]);
    30     printf("
    ");
    31 }
    32 /*--------------------求线性表中某个元素的值,返回第i个元素的值----------------------*/
    33 bool GetElem(SqList *L,int i,ElemType &e)
    34 {
    35     if(i<1||i>L->length)
    36         return false;
    37     e=L->data[i-1];
    38     return true;
    39 }
    40 /*----按元素之查找,返回L中第一个值域与e相等的序号,若这样的元素不存在,则返回值为零-----*/
    41 int LocateElem(SqList *L,ElemType e)
    42 {
    43     int i=0;
    44     while(i<L->length&&L->data[i]!=e)
    45         i++;
    46     if(i>=L->length)
    47         else
    48             return i+1;
    49 }
    50 /*------------插入数据元素,在L的第i个元素之前插入新的元素-------------*/
    51 bool ListInsert(SqList *&L,int i,ElemType e)
    52 {
    53     int j;
    54     if(i<1||i>L->data[j-1])
    55         L->data[j]=L->data[j-1];
    56     L->data
    57 }
    58 /*------------------删除数据元素,删除L的第i个元素------------------------*/
    59 bool ListDelete(SqList *&L,int i,ElemType &e)
    60 {
    61     int j;
    62     if(i<1||i>L->length)
    63         return false;
    64     i--;
    65     e=L->data[i];
    66     for(j=i;j<L->length-1;j++)
    67         L->data[j]=L->data[j+1];
    68     L->length--;
    69     return true;
    70 }
  • 相关阅读:
    第12课 计算器核心解析算法(上)
    第11课 Qt中的字符串类
    第10课 初探 Qt 中的消息处理
    第9课 计算器界面代码重构
    第8课 启航!第一个应用实例
    第7课 Qt中的坐标系统
    第6课 窗口部件及窗口类型
    第5课 Qt Creator工程介绍
    第4课 Hello QT
    给Linux内核增加一个系统调用的方法(转)
  • 原文地址:https://www.cnblogs.com/table/p/4719252.html
Copyright © 2011-2022 走看看