王道数据结构线性表基本操作实现

本文详细探讨了王道数据结构中线性表的基本操作,包括插入、删除、查找等核心算法,通过实例解析了线性表在实际应用中的实现步骤与优化策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#include<iostream>
using namespace std;

//#define MaxSize 50            //线性表最大长度
#define InitSize 100          //表长度初始定义

typedef int ElemType;

//typedef struct {
   
//	ElemType data[MaxSize];    //线性表元素
//	int length;                //线性表当前长度
//}SqList;                       //顺序表类型定义


//线性表中的元素位序从1开始,而数组中元素的下标从0开始
typedef struct {
   
	ElemType* data;            //指示动态分配数组的指针
	int length;                //顺序表当前长度
	int MaxSize;               //数组的最大容量
}SqList;                       //动态分配数组顺序表的类型定义

/*初始化表*/
void InitList(SqList& L) {
   
	L.data = (ElemType*)malloc(sizeof(ElemType) * InitSize);  //C风格
	//L.data = new ElemType[InitSize];   //C++风格
	if (!L.data) exit(0);
	L.length = 0;           //空表的长度为0
	L.MaxSize = InitSize;   //初始数据元素存储容量
}

/*求表长*/
int Length(SqList& L) {
   
	return L.length;
}

/*
按位查找操作:
	查找第i个位置上的元素
*/
int GetElem(SqList& L
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一倾而尽

你的鼓励将是我最大的动力,谢谢

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值