連續儲存陣列的部分演算法(c語言)

2021-10-04 06:10:52 字數 2020 閱讀 2961

構建乙個動態陣列,對陣列進行元素的插入,刪除,排序等操作。

#include

#include

#include

//包含exit函式

#include

struct arr

;void

init_arr

(struct arr * parr,

int length)

;//初始化

(struct arr * parr,

int val)

;//追加

bool insert_arr

(struct arr * parr,

int pos,

int val)

;//插入

bool delete_arr

(struct arr * parr,

int pos,

int*pval)

;//刪除

//int get();

bool is_empty

(struct arr * parr)

;//判斷是否為空

bool is_full

(struct arr * parr)

;//判斷是否滿

void

sort_arr

(struct arr *parr)

;//排序

void

show_arr

(struct arr * parr)

;//顯示

void

inversion_arr

(struct arr *parr)

;//倒置

intmain

(void

)else

show_arr

(&arr)

;printf

("\n");

inversion_arr

(&arr)

;printf

("倒置後的數為:\n");

show_arr

(&arr)

;printf

("\n");

sort_arr

(&arr)

;printf

("排序後的數為:\n");

show_arr

(&arr)

;printf

("\n");

return0;

}void

init_arr

(struct arr * parr,

int length)

else

return

;//函式終止

}bool is_empty

(struct arr * parr)

bool is_full

(struct arr * parr)

void

show_arr

(struct arr * parr)

else

printf

("\n");

}}(struct arr * parr,

int val)

bool insert_arr

(struct arr * parr,

int pos,

int val)

parr->pbase[pos-1]

= val;

(parr->cnt)++;

return true;

}bool delete_arr

(struct arr * parr,

int pos,

int*pval)

(parr->cnt)--;

return true;

}void

inversion_arr

(struct arr *parr)

return;}

void

sort_arr

(struct arr *parr)}}

}

連續儲存陣列的演算法

昨天學習了連續儲存陣列的演算法,我今天打算用c語言實現,雖然 有好多地方都不好 比如1 如何更正使用者的非法輸入,2 無法中斷追加,也就是說雖然陣列定義了6個元素,但是只想追加兩個元素,其餘的可通過插入的方式確定元素。但是心裡還是很爽。這種一下一下敲出來的,經過好多次執行,除錯,最後成功的感覺真是無...

連續儲存陣列

include include include struct arr void init arr struct arr parr,int length 初始化 struct arr parr,int val 追加 bool insert arr struct arr parr,int pos,int...

建立連續儲存陣列

2017年6月16日 08 45 55 資料結構 c 建立連續儲存陣列 功能 初始化 追加 插入 刪除 排序 是否空 是否滿 include include include typedef struct arr sa void init sa arr,int len void show sa arr...