顺序表的元素创建、插入、删除、查找等操作(C语言实现)

本文介绍了如何使用C语言实现顺序表的基本操作,包括顺序表的初始化、数据插入、元素删除、遍历输出以及查找功能。通过详细代码示例,帮助读者理解和应用顺序表的相关知识。
摘要由CSDN通过智能技术生成

用到的头文件和结构体

#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 1024

typedef int elemtype;
typedef struct
{
   
    elemtype data[MAXSIZE];
    elemtype last;
}SqList;

顺序表的初始化`

SqList *init_SequenList()
{
   
    SqList *L;//定义顺序表的指针变量
    L = (SqList *)malloc(sizeof(SqList));
    if(NULL == L){
   
        return 0;
    }
    L -> last = -1;//设置顺序表的长度last为-1表示顺序表为空
    return L;//返回顺序表的首地址
}

插入数据

elemtype insert_SequenList(SqList *L,elemtype x,int i)
{
   
    //L顺序表的首地址,x插入的元素,插入的位置
    int j;
    if(MAXSIZE - 1 == L -> last){
   //顺序表满了
        return 0;//插入失败
    }
    if(i < 1 || i > L -> last + 2){
   //插入的位置非法
        return 0;
    }
    if(i == L -> last + 2){
   //如果是在表尾插入的话
        L -> data[i - 1] = x;
        L -> last ++;
        return 1;
    }
    for(j = L -> last;j >= i - 1;j --){
   
        L -> data[j + 1] = L -> data[j]
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值