動態順序表的基本操作

2021-08-19 08:53:20 字數 1989 閱讀 5628

seqlistd.h

#pragma once

#include

#include

#include

typedef

int datatype;

typedef

struct seqlistd

seqlistd,*pseqlistd;

void seqlistdinit(pseqlistd ps, int _capacity); //初始化

void seqlistdpushback(pseqlistd ps, datatype data); //尾插

void seqlistdpopback(pseqlistd ps); //尾刪

void seqlistdinsert(pseqlistd ps, int pos, datatype data); //任意位置插入

void seqlistderase(pseqlistd ps, int pos); //任意位置刪除

int seqlistdsize(pseqlistd ps); //獲取元素個數

int seqlistdcapacity(pseqlistd ps); //獲取順序表容量

int seqlistdempty(pseqlistd ps); //判空

void seqlistdclear(pseqlistd ps); //將順序表中的元素清除

int checkcapacity(pseqlistd ps); //增容

void print(pseqlistd ps); //列印

void seqlistddestroy(pseqlistd ps); //銷毀

seqlistd.c

#include "seqlistd.h"

void seqlistdinit(pseqlistd ps, int _capacity) //初始化

ps->_capacity = _capacity;

ps->_size = 0;

}void seqlistdpushback(pseqlistd ps, datatype data) //尾插

void seqlistdpopback(pseqlistd ps) //尾刪

ps->_size--;

}void seqlistdinsert(pseqlistd ps, int pos, datatype data) //任意位置插入

ps->_array[pos] = data;

ps->_size++;

}void seqlistderase(pseqlistd ps, int pos) //任意位置刪除

ps->_size--;

}int seqlistdsize(pseqlistd ps) //元素個數

return ps->_size;

}int seqlistdcapacity(pseqlistd ps) //容量的大小

return ps->_capacity;

}int seqlistdempty(pseqlistd ps) //判空

if (ps->_size == 0)

return

0; return1;}

void seqlistdclear(pseqlistd ps) //清除

void seqlistddestroy(pseqlistd ps) //銷毀

int checkcapacity(pseqlistd ps) //增容

return1;}

void print(pseqlistd ps) //列印

printf("\n");

}

test.c

#include "seqlistd.h"

int main()

線性表 順序表的基本操作(動態)

線性結構示意圖 對於非空的線性表或線性結構,其特點是 線性表的抽象資料型別定義如下 adt list 線性表 每個元素的型別均為datatype。資料關係 一對一的關係,每個元素有乙個或零個前驅或後繼。operation 基本操作 線性表的順序儲存結構,指的是用一段位址連續的儲存單元依次儲存線性表的...

動態順序表(可擴容)的基本操作

標頭檔案 define crt secure no warnings 1 ifndef staticseqlist h define staticseqlist h include include include include include define maxsize 10 define ca...

動態順序表的基本操作(c語言)

include include 使用malloc函式要包含這個檔案 include define init capacity 10 初始化時分配的容量 typedef struct seqlistseqlist void seqlist init seqlist list 初始化順序表 void c...