浅浅实现一下C语言顺序表吧

本文将介绍如何在C语言中实现数据结构的基础——顺序表。通过实例代码,详细讲解了顺序表的创建、插入、删除及遍历操作,帮助读者深入理解C语言中的动态内存管理和数据结构操作。
摘要由CSDN通过智能技术生成
#include<stdio.h>
#include<stdlib.h>
typedef char ElemType;
#define MAXSIZE 10  
typedef struct{
	ElemType *elem;//指向线性表的基地址
	int uLength;
	int uListSize;
}SqList;
//要动态分配与释放

//初始化:可读性变好
bool InitList(SqList &L,unsigned int uListSize){
	if(uListSize<=0) return false;
	L.elem=(ElemType*)malloc(sizeof(ElemType)*uListSize);//指针指向数据存储的空间
	//指针两种初始化的方式:1.malloc分配空间 
	//2.指针是ElemType类型,使用ElemType类型的变量或数组的存储空间赋值
	if(!L.elem) return false;//!L.elem的意思是空指针
	L.uLength=0;
	L.uListSize=uListSize;
	return true;
}

//销毁线性表
void DestroyList(SqList &L)
{
	if(L.elem) free(L.elem);
	L.elem=NULL;
}
//求线性表的长度
int ListLength(SqList L)
{
	return(L.uLength);
}
//4.按位置取表中某个元素 
bool GetElem(SqList L, int i, ElemType &e)
{
	if(i<1||i>L.uLength) return false;
	e=L.elem[i-1];
	return true;
}
//5.插入操作,在i位置之前插入e  
bool ListInsert(SqList &L, int nPos, ElemType e)
{
	if(nPos<1||nPos>L.uLength+1)
	return fals
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值