線性表 順序儲存結構功能實現

2021-09-18 05:25:26 字數 2235 閱讀 6654

完整**

線性表:零個或多個資料元素的有限序列。

線性表分為 順序儲存方式 和 鏈式儲存方式。

這裡我們主要實現順序儲存方式的線性表及其一些功能。

線性表屬一種抽象資料型別,如int,float,double一樣 只是結構更加複雜一些。

下面是線性表一些函式實現一些功能

initlist

(sqlist *l) 初始化操作,建立乙個空的線性表

listempty

(sqlist *l) 若線性表為空,返回ture,否則返回false

clearlist

(sqlist *l) 將線性表清空

getelem

(sqlist l,

int i,elemtype *e) 將線性表l中的第i個位置元素值返回給e

locateelem

該元素在表中序號表示成功;否則,返回0表示失敗

listinsert

(sqlist *l,

listdelete

(sqlist *l,

int i,elemtype *e) 刪除線性表l中第i個位置元素,並用e返回其值

listlength

(sqlist l) 返回線性表元素l的元素個數

順序儲存定義

線性表的順序儲存結構,指的是用一段位址連續的儲存單元一次儲存線性表的資料元素。

順序儲存方式

這裡說明一下 「為什麼會有很多的typedef 和define 這種很多的替換 直接寫不應該會很方便嗎?」

typedef的一些名字的變化是為了後面的** 一些變數定義的解釋 便於**更好的理解

difine 控制一些常量 便於資料的整體改動 如果一些資料重複使用需要改動的話 再去細找會很容易出現錯誤

#define maxsize 100

typedef

int elemtype; 換一下名字更便於理解

typedef

struct

sqlist;

順序儲存插入與刪除

**實現

#define ok 1

#define error 0

typedef

int status ;

status getelem

(sqlist l,

int i,elemtype *e) 獲取元素操作

void

listinsert

(sqlist *l,

int i,elemtype e) 插入操作

status listdelete

(sqlist *l,

int i,elemtype *e) 刪除操作

線性表順序儲存結構的優缺點優點

缺點自己寫的完整**

一些功能的實現

#include

#define maxsize 100

#define ok 1

#define error 0

typedef

int elemtype;

typedef

int status ;

typedef

struct

sqlist;

void

initlist

(sqlist *l)

status listempty

(sqlist *l)

void

clearlist

(sqlist *l)

status getelem

(sqlist l,

int i,elemtype *e)

status locateelem

(sqlist l,elemtype e)

return error;

}void

listinsert

(sqlist *l,

int i,elemtype e)

status listdelete

(sqlist *l,

int i,elemtype *e)

intlistlength

(sqlist l)

intmain()

}return0;

}

線性表線性(順序)儲存結構

實現順序表的曾刪查操作 元素結構體 define maxsize 100 線性表的最大長度 typedef int elemtype elemtype為線性表元素的型別 typedef struct sequenlist 插入操作 bool insertinseqlist sequenlist l,...

線性表的順序儲存 線性表的順序儲存結構

1,本文實現乙個線性表 2,順序儲存定義 1,線性表的順序儲存結構,指的是用一段位址連續的儲存單元依次儲存線性表中的資料元素 2,在 c 中可以用乙個陣列作為介質來儲存資料元素 3,設計思路 1,可以用一維陣列實現順序儲存結構 1,儲存空間 t m array 2,當前長度 int m length...

線性表 順序儲存結構

s1線性表的基本概念 1 有而且只有乙個 第一元素 2 有而且只有乙個 最後元素 3 除第一元素之外,其他元素都有唯一的直接前驅。4 除最後元素之外,其他元素都有唯一的直接後繼。s2計算公式 若第乙個元素的位址是a,每個元素占用的儲存空間為d,則陣列的第i個元素的位址可以用如下公式計算 loc i ...