C++实现基于静态数组的顺序表实现基于静态数组的顺序表
主要介绍了C++实现基于静态数组的顺序表,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小
伙伴们可以参考一下
本文实例为大家分享了C++实现基于静态数组的顺序表,供大家参考,具体内容如下
实现的基本操作有:
1. 初始化
2. 尾插
3. 尾删
4. 头插
5. 头删
6.查找任意元素
7. 读任意位置元素
8. 修改任意位置元素
9. 查找指定元素值的下标
10. 在任意位置插入元素
11.删除指定位置的元素
12.删除任意元素
13.打印数据
头文件seqlist.h:
#pragma once
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
#define maxsize 1000//链表最多元素个数
typedef int seqType;
typedef struct seqlist
{
seqType arr[maxsize];//数据域,存放数据
size_t size;//size_t是无符号长整型,是一种类型,size在数组中表示元素个数
}seqlist ;
void PrintSeqList(seqlist *seq); //打印数据
void print_seqlist(char *s); //打印标题
void seqlistInit(seqlist *seq); //链表初始化
void seqlistPushBack(seqlist *seq, seqType value); //尾插元素,value是插入元素的值
void seqlistPopBack(seqlist *seq); //尾删元素,value是插入元素的值
void seqlistPushHead(seqlist*seq, seqType value); //头插元素
void seqlistPopHead(seqlist*seq); //头删元素
seqType seqlistFind(seqlist *seq, seqType data); //查找任意元素
seqType seqlistRead_pos(seqlist*seq, size_t pos); //读取任意位置的元素
size_t seqlistFind_pos(seqlist*seq, seqType value); //查找指定元素的下标
seqType seqlistModify(seqlist*seq, size_t pos, seqType data); //修改任意位置的元素
void seqlistInsert_pos(seqlist *seq, size_t pos, seqType data); //在任意位置插入元素
void seqlistErase_pos(seqlist *seq, size_t pos); //删除任意位置的元素
void seqlistRemove(seqlist *seq, seqType data); //删除元素
实现文件seqlist.c
#include"seqlist.h"
void PrintSeqList(seqlist *seq)//打印数据
{
size_t i = 0;
if (seq->size == 0)
{
printf("线性表为空,打印结束");
return;
}
for (i = 0; i < seq->size; i++)
{
printf("下标为%d的元素是:%d\n",i, seq->arr[i]);
}
printf("");