[数据结构1]线性表的顺序表C++实现

[数据结构1]线性表的顺序表C++实现,第1张

[数据结构1]线性表的顺序表C++实现

本顺序表一开始没有存放数据,需要使用insert函数自行插入
以下代码

// 线性表的顺序表实现
// @data:2021/11/17
// @author:Raften
#include 
#include 
using namespace std;

#define MAXSIZE 500

// X作为int类型
struct ElemType
{
    int x;
};

// 线性表结构体
struct List
{
    ElemType data[MAXSIZE]; // 存放数据
    int Length;             // 线性表长度
};


// MySqList类定义
class MySqList{
public:
    MySqList();   // 成员函数
    ~MySqList();  // 析构函数
    void TravelSqList();                    // 遍历顺序表
    int FindSqList(ElemType e);             // 在线性表L重查找e第一次出现的位置
    void InsertSqList(int loc,ElemType e);  //在位序loc前插入元素e
    void DeleteSqList(int loc);             // 删除指定位置(loc)的元素  此处的 &e 因为e还需要承接下一位顺序表的值,而且他本身的值也应该被改变
    ElemType FindKth(int loc);              // 返回loc位元素
    int LengthSqList();                     //返回线性表SqList的长度
    void ChoiceSqList();                    // 功能选择
private:
    List L;    // 表名为L
};

// 成员函数的初始化  // 线性表的初始化
MySqList::MySqList()
{
    L.Length = 0;
    for(int i=0;iL.Length+1){
        cout<<"error:插入位置超出范围"<=MAXSIZE){
        cout<<"error:顺序表已满"<=loc;i--){
            L.data[i].x = L.data[i-1].x;
        }
        // 插入
        L.data[loc-1].x = e.x;
        L.Length++;
        cout<<"插入成功"<L.Length+1){
        cout<<"error:删除位置超出范围"<L.Length;i++){
            L.data[i].x = L.data[i+1].x;
        }
        L.Length--;
        cout<<"删除成功"<L.Length+1){
        cout<<"error:查询位置超出范围"<>number;
        int loc; // 定义位数
        ElemType e; // 定义e
        int a;
        switch (number)
        {
        case 0:  system("cls"); 
            cout<<"==2s后退出程序=="<>a;
                e.x = a;
                cout<<"元素的位置位:"<>loc;
                cout<<"插入的元素: "<>a;
                e.x = a;
                InsertSqList(loc,e); 
            break;
        case 4: system("cls"); 
                cout<<"删除的位置:";
                cin>>loc;
                DeleteSqList(loc);
            break;
        case 5: system("cls"); 
                cout<<"需要查询的位置:"<>loc;
                e = FindKth(loc);
                cout<					
										


					

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5520653.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-13
下一篇 2022-12-13

发表评论

登录后才能评论

评论列表(0条)

保存