#include #include // 使用malloc函式要包含這個檔案
#include #define init_capacity 10 // 初始化時分配的容量
typedef struct seqlistseqlist;
void seqlist_init(seqlist *list); //初始化順序表
void check_capacity(seqlist *list); // 檢查是否滿
void push_front(seqlist *list, int value); // 在順序表前頭部插入元素
void push_back(seqlist *list, int value); // 在順序表尾部插入元素
void insert_list(seqlist *list, int pos, int value); // 在pos這個位置插入元素
void pop_front(seqlist *list); // 刪除順序表第乙個元素
void pop_back(seqlist *list); // 刪除順序表最後乙個元素
void list_printf(seqlist *list); // 遍歷順序表
void destroy_list(seqlist *list); // 摧毀順序表
void list_cleardata(seqlist *list); // 清空順序表的資料
int main(void)
// 初始化順序表
void seqlist_init(seqlist *list)
// 判斷順序表是否以滿,如果滿了,增加順序表的容量
void check_capacity(seqlist *list)
}// 在順序表前插入資料
void push_front(seqlist *list, int value)
list->array[0] = value; // 將插入的值賦給第乙個元素
list->size++; // 有效元素個數 +1
}// 在順序表尾部插入資料
void push_back(seqlist *list, int value)
// 在順序表第pos個位置插入資料
void insert_list(seqlist *list, int pos, int value)
// 將第pos個位置之後的資料往後移動一位
for (i=list->size; i>=pos; i--)
list->array[pos-1] = value;
list->size++;
}// 刪除頭部資料
void pop_front(seqlist *list)
else
}list->size--; // 有效資料的個數減1
}void pop_back(seqlist *list)
else
}void list_printf(seqlist *list)
}void destroy_list(seqlist *list)
void list_cleardata(seqlist *list)
順序表的基本操作(C語言)
define list init size 100 線性表初始分配量 define listincreament 10 分配增量 include include typedef struct sqlistsqlist 定義線性表 void creat sqlist sqlist l 判斷表是不是空表...
順序表的基本操作(C語言)
順序表是指線性表的順序表示,指的是用一組位址連續的儲存單元依次儲存線性表的資料元素。只要確定了順序表的起始位置,順序表的任一資料元素都可以隨機訪問,線性表的順序儲存結構是一種隨機訪問的儲存結構。在這點上與高階程式語言中的陣列十分相似,因此通常用陣列來描述資料結構中的順序儲存結構。下面是在學習浙大資料...
動態順序表的基本操作
seqlistd.h pragma once include include include typedef int datatype typedef struct seqlistd seqlistd,pseqlistd void seqlistdinit pseqlistd ps,int capa...