PTA 資料結構 6 2 順序表基本操作

2021-08-09 08:06:03 字數 2081 閱讀 6656

status listinsert_sq(sqlist &l, int pos, elemtype e);

status listdelete_sq(sqlist &l, int pos, elemtype &e);

int listlocate_sq(sqlist l, elemtype e);

void listprint_sq(sqlist l);

其中 l 是順序表。 pos 是位置; e 代表元素。當插入與刪除操作中的pos引數非法時,函式返回error,否則返回ok。

//庫函式標頭檔案包含

#include#include#include//函式狀態碼定義

#define true 1

#define false 0

#define ok 1

#define error 0

#define infeasible -1

#define overflow -2

typedef int status;

//順序表的儲存結構定義

#define list_init_size 100

#define listincrement 10

typedef int elemtype; //假設線性表中的元素均為整型

typedef structsqlist; //順序表型別定義

status listinsert_sq(sqlist &l, int pos, elemtype e);

status listdelete_sq(sqlist &l, int pos, elemtype &e);

int listlocate_sq(sqlist l, elemtype e);

void listprint_sq(sqlist l);

//結構初始化與銷毀操作

status initlist_sq(sqlist &l)

int main()

for(int i = 1; i <= 10; ++ i)

listinsert_sq(l, i, i);

int operationnumber; //操作次數

scanf("%d", &operationnumber);

while(operationnumber != 0) else if(operationtype == 2) else if(operationtype == 3) else if(operationtype == 4)

operationnumber--;

}return 0;

}/* 請在這裡填寫答案 */

輸入格式: 第一行輸入乙個整數operationnumber,表示運算元,接下來operationnumber行,每行表示乙個操作資訊(含「操作種類編號 操作內容」)。 編號為1表示插入操作,後面兩個引數表示插入的位置和插入的元素值 編號為2表示刪除操作,後面乙個引數表示刪除的位置 編號為3表示查詢操作,後面乙個引數表示查詢的值 編號為4表示順序表輸出操作 輸出格式: 對於操作2,輸出刪除的元素的值 對於操作3,輸出該元素的位置,如果不存在該元素,輸出「not found」; 對於操作4,順序輸出整個順序表的元素,兩個元素之間用空格隔開,最後乙個元素後面沒有空格。

4

1 1 11

2 23 3

4

1

311 2 3 4 5 6 7 8 9 10

//**如下

status listinsert_sq(sqlist &l, int pos, elemtype e)

l.elem[pos-1]=e;

l.length++;

return 1;

}status listdelete_sq(sqlist &l, int pos, elemtype &e)

{ e=l.elem[pos-1];

l.length--;

for(int i=pos-1;i

基本資料結構 順序表

順序表,陣列就是典型的順序表,順序表便於查詢元素,單移動 刪除時間開銷比較大,好了廢話少說,直接上 對照原始碼看吧 ifndef seqlist h define seqlist h include include using std cin using std cout using std cer...

資料結構PTA學生順序表的建立

pta學生順序表的建立 完成對乙個順序表的建立,表中的每個元素是同學們的學號 姓名和三門課程的成績,輸入5個同學的資訊,然後顯示在螢幕上。要求利用順序表的基本操作 輸入格式 首先收入學生人數5,然後依次輸入5個學生的學號 姓名和三門課的成績 輸出格式 輸入5個學生的學號 姓名和三門課的成績 輸入樣例...

資料結構 實現基於靜態陣列的順序表的基本操作

實現基於靜態陣列的順序表的以下基本操作 首先先定義乙個結構體型別seqlist arr size 有效的元素個數 預定義乙個陣列的最大長度,將整型資料變數typedef為datatype,為了以後在插入刪除別的型別時方便修改 初始化 void initseq seqlist s 將陣列的size置為...