顺序表-顺序表的基本操作(初始化+指定位置元素值 + 用元素值求下标)

顺序表的存储结构:

typedef struct{
        int data[Maxsize];  //存在顺序表中的元素
        int length; //存放顺序表的长度
    }SqList;

一.初始化顺序表算法:

void InitList(SqList &L){
        L.length = 0;
    }

二.求顺序表中指定位置元素值的算法
1.首先要判断输入参数位置是否有误,有,则返回0
2.如果没有,则用e保存所要得到元素值

int GetElem(SqList L,int i,int &e){ //根据位置,得到元素值
        if(i < 1 || i > L.length) return 0;
        e = L.data[i - 1];
        return 1;
    }

三.按元素值查找算法(找到则返回逻辑序号i + 1)
1.首先要查找,看是否存在,不存在,则返回0
2.存在,则返回i+ 1

 int LocateElem(SqList L,ELemType e){
        int i = 0;
        while(i < L.length && L.data[i] != e) i++; //如果没有找到,继续找 i++
        if(i >= L.length) return 0;
        else return i+1; //找到了返回其逻辑序号
    }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值