408数据结构——线性表之C++实现顺序表

可修改main函数内的注释,测试相应的顺序表操作。

#include <iostream>

using namespace std;
#define initSize 10  // 顺序表初始容量
    
    // 创建顺序线性表(顺序表),动态分配内存空间地址
    typedef struct {
   
        int *array;  // 指向顺序表的指针
        int maxSize,length; // 顺序表最大容量,顺序表当前长度
    }sqList;

    // 初始化顺序表
    void initSqList(sqList &L) {
   
        L.array = new int[initSize];
        L.maxSize = initSize;
        L.length = 0;
    }

    // 增加顺序表长度
    bool increaseSqList(sqList &L,int length) {
   
        if (length < 1)  return false;  // 增加长度小于1,则返回失败

        int *temp = L.array;    // 暂存原数据
        L.array = new int[initSize + length];    // 给新的顺序表分配新的内存空间地址
       
        for (int i = 0; i < L.length; i++) {
   
            L.array[i] = temp[i];
        }

        L.maxSize += length;
        delete(temp);
        return true;
    }

    // 指定第index个位置插入元素
    bool insertElement(sqList &L,int index,int e) {
   
        if (index < 1 || index >
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值