//顺序表的各种操作(包括头删,尾删,插入,逆序,摧毁,清空等等)
//头文件
#ifndef _SEQLIST_H
#define _SEQLIST_H
#include<stdio.h>
typedef int ElemType;
#define INIT_SIZE 8
typedef struct SeqList
{
ElemType *base;
size_t capacity;
size_t size;
}SeqList;
int isempty(SeqList *list);
int isfull(SeqList *list);
void InitList(SeqList *list);
void push_back(SeqList *list, ElemType x);
void show_list(SeqList *list);
void push_front(SeqList *list, ElemType x);
void pop_back(SeqList *list);
void pop_front(SeqList *list);
void insert_pos(SeqList *list, ElemType x, int pos);
void quit_system(SeqList *list, int *x);
int find(SeqList *list, ElemType x);
int length(SeqList *list);
void insert_val(SeqList *list, ElemType x);
void sort(SeqList *list);
void delete_pos(SeqList *list,int pos);
void delete_val(SeqList *list, ElemType x);
void clear(SeqList *list);
void destory(SeqList *list);
void reverse(SeqList *list);
#endif
//函数文件
#include"SeqList.h"
int i;
int isempty(SeqList *list) //检测表是否满
{
return list->size == 0;
}
int isfull(SeqList *list) //检测表是否空
{
return list->size >= list->capacity;
}
void InitList(SeqList *list) //表初始化
{
list->capacity = INIT_SIZE;
list->base = (ElemType *)malloc(sizeof(ElemType)*list->capacity);
list->size = 0;
}
void push_back(SeqList *list, ElemType x) //尾插
{
if (isfull(list))
{
printf("顺
【数据结构】用C语言实现顺序表的各种操作(包括头删,尾删,插入,逆序,摧毁,清空等等)
最新推荐文章于 2024-04-26 23:46:11 发布