資料結構之順序表

2021-09-26 23:07:46 字數 1878 閱讀 3783

順序表是用一段實體地址連續的儲存單元依次儲存資料元素的線性結構,一般情況下採用陣列儲存。在陣列 上完成資料的增刪查改;在這份**裡分別完成了一些線性表的功能;在我理解,線性表就是將陣列結構化。

list.h

#ifndef _list_h_

#define _list_h_

#define _crt_secure_no_warnings

#include#include#includetypedef struct seqlist

list;

void showlist(list *s);//列印

void initializationlist(list *s);//初始化

void capacityexpansionlist(list *s);//擴容

void frountpushinsert(list *s , int add);//頭插

void frountdeletelist(list *s);//頭刪

void backpushlist(list *s, int add);//尾插

void backdeletelist(list *s);//尾刪

void arbitrarilyinsertlist(list *s, int num, int add);//任意插

void arbitrarilydeletelist(list *s, int num);//任意刪

void bubblesortlist(list *s);//氣泡排序

void binarysearchlist(list *s);//二分查詢

#endif

list.c

#include"list.h"

void initializationlist(list *s)//初始化

void capacityexpansionlist(list *s)//擴容

s->arr = (int*)realloc(s->arr, (s->capicity * sizeof(int)));

}void frountpushinsert(list *s, int add)//頭插

void frountdeletelist(list *s)//頭刪

void showlist(list *s)//列印

printf("\n");

}void backpushlist(list *s, int add) //尾插

void backdeletelist(list *s)//尾刪

void arbitrarilyinsertlist(list *s, size_t num, int add)//任意插

s->arr[size] = add;

s->size++;

}void arbitrarilydeletelist(list *s, size_t num)//任意刪

s->size--; }}

void bubblesortlist(list *s)//氣泡排序

} if (count == 0)

size--; }}

void binarysearchlist(list *s,int se)//二分查詢

else if (s->arr[mid] > se)

else if (s->arr[mid] < se)}}

test.c

#include"list.h"

void funs()

int main()

資料結構之順序表

首先是標頭檔案seqlist.h ifndef seqlist h define seqlist h include includeusing namespace std define elemtype int define seqlist default size 10 typedef struc...

資料結構之順序表

順序表的思想容易了解,但是 不容易掌握,我這裡根據老師所提供的 進行一下簡單的總結 這個 包含順序表的查詢,插入,刪除,建表,輸出資料 includeusing namespace std define ok 1 define error 0 define overflow 2 typedef in...

資料結構之順序表

順序表就是按照順序儲存方式儲存的線性表,該線性表的結點按照邏輯次序一次存放在計算機的一組連續的儲存單元中如下圖 由於順序表是一次存放的,只要知道了該順序表的首位址以及每個資料元素所占用的儲存長度,那麼我們就很容易計算出任何乙個資料元素 也就是資料繫結點 的位置。1 結點資料型別 public cla...