21xrx.com
2024-09-19 09:53:50 Thursday
登录
文章检索 我的文章 写文章
C++ 类实现顺序表
2023-06-27 17:06:30 深夜i     --     --
C++ 实现 顺序表

C++ 语言中,顺序表是一种常用的数据结构,用于存储具有顺序关系的数据元素。一个顺序表常常是由数组来实现的,它的特点是随机访问快,但插入和删除元素操作的时间复杂度较大。

在 C++ 中,通过类来实现顺序表,可以使代码结构更加清晰,易于维护。在类的定义中,我们可以使用一个指针变量来表示顺序表,具体的实现方法如下:


class SeqList {

public:

  SeqList(int size = 10) {

    data = new int[size];

    maxSize = size;

    length = 0;

  }

  // 插入元素

  bool insert(int index, int value) {

    if (index < 0 || index > length)

      return false;

    

    if (length >= maxSize)

      return false;

    

    for (int i = length; i > index; i--) {

      data[i] = data[i - 1];

    }

    data[index] = value;

    length++;

    return true;

  }

  // 删除元素

  bool remove(int index) {

    if (index < 0 || index >= length)

      return false;

    

    for (int i = index; i < length - 1; i++) {

      data[i] = data[i + 1];

    }

    length--;

    return true;

  }

  // 获取指定位置的元素

  int get(int index) const {

    if (index < 0 || index >= length)

      return -1;

    

    return data[index];

  }

  // 获取顺序表的长度

  int size() const

    return length;

  

private:

  int* data; // 指向顺序表的指针

  int maxSize;

  int length;

};

在这个类中,我们通过一个指向 int 类型的指针 data 来表示顺序表。构造函数中通过动态内存分配来获得实际存储空间,并初始化 maxSize 和 length 为 0。

类中还实现了 insert、remove、get 和 size 函数。insert 和 remove 分别实现了插入和删除元素的操作;get 用于获取指定位置的元素,size 用于获取顺序表的长度。

这个实现方式可以帮助开发者更清晰地实现顺序表的功能,并且方便了代码的维护、调试和扩展。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复