順序儲存結構 陣列

2021-09-24 19:57:23 字數 2688 閱讀 9045

陣列就是常見的順序儲存結構。

//list

#include

#include

////型別,位址為data,大小為data的型別*size一片連續的空間

typedef

struct nodelist_t;

//建立

list_t* create_list( int size)

list_t* list=malloc(sizeof(list_t));

//malloc 返回 void * -》 list_t * 無型別 賦值給有型別 則

//隱式轉換 成 list_t *

////在 windows 環境下 編譯出錯 需要強制轉換

// list_t* list=(list_t *)malloc(sizeof(list_t));

//list->size=size;

list->data=malloc(sizeof(int)*size);//給 空間內的 類似陣列 賦予 空間

list->last=-1;//初始化 last為空

// . 是結構體變數 訪問 變數內的成員

// -> 是結構體指標 訪問 變數內的成員

return

list;//返回乙個 list_t 型別空間的首位址

}//判空

intisnull

(list_t* list)

//判滿

intisfull

(list_t* list)

//增int

insert_head_list

(list_t* list,int data)

//3 放入資料

list->data[0]=data;

//4 last++

list->last++;

return0;}

//刪int

delete_head_list

(list_t* list)

//3list->last--;

return0;}

//查int

locate_list

(list_t* list,int data)

return

-1;//始終未找到時 返回 -1;

}//改

intchange_index_list

(list_t* list,int index,int data)

//列印

intprint_list

(list_t* list)

printf("\n");

return0;}

//指定位置 插入

intinsert_index_list

(list_t* list,int index,int data)

//3 放入資料

list->data[index]=data;

//4 last++

list->last++;

return0;}

//指定位置 刪除

intdelete_index_list

(list_t* list,int index)

//3list->last--;

return0;}

//逆列印

intre_print_list

(list_t* list)

printf("\n");

return0;}

//長度

intlength_list

(list_t* list)

//清空

intclear_list

(list_t* list)

//銷毀

intdestroy_list

(list_t* list)

intmain

(int argc, const

char *ar**)

// printf("sizeof long long:%d\n",sizeof(long long));

list_t* list=create_list(atoi(ar**[1]));

//ato ascii to int

int i;

for(i=1;i<=30;i++)

if(0==change_index_list(list,locate_list(list,150),666))

print_list(list);

if(insert_index_list(list,locate_list(list,666),150)==0)

print_list(list);

if(delete_index_list(list,locate_list(list,666))==0)

print_list(list);

re_print_list(list);

printf("length_list :%d\n",length_list(list));

clear_list(list);

printf("length_list :%d\n",length_list(list));

destroy_list(list);

#if 0

for(i=1;i<=30;i++)

#endif

return

0;}

順序儲存結構

順序儲存結構的插入與刪除 獲得元素操作 將線性表 l中的第 i個位置元素值返回,在陣列下標範圍內,就是把陣列第 i 1下標的值返回即可。define ok1 defineerror 0 definetrue 1 definefalse 0 typedefint status status 是函式的型...

串 順序儲存結構

該文章主要介紹串的順序儲存結構以及相關運算。標頭檔案 sqstring.h ifndef sqstring h define sqstring h include const int maxsize 100 class sqstringclass 順序串類 endif 原始檔 sqstring.cp...

迴圈佇列Queue 使用順序儲存結構(陣列)實現

本人之前總是看,但是上手寫 少。就是那種眼高手低的 汗 這段時間有空,就來補補吧,從基礎開始.希望能夠堅持下去。資料成員 頭索引 front 尾索引 rear 判斷條件 判斷佇列 空 front rear 判斷佇列 滿 rear 1 max size front,頭和尾之間,保留乙個元素空間 計算佇...