順序表
定義
順序表(array-based list)又稱為向量(vector)是在計(jì)算機(jī)內(nèi)存中以數(shù)組的形式保存的線性表.
線性表的順序存儲(chǔ)是指用一組地址連續(xù)的存儲(chǔ)單元依次存儲(chǔ)線性表中的各個(gè)元素,使得線性表中在邏輯結(jié)構(gòu)上相鄰的數(shù)據(jù)元素存儲(chǔ)在相鄰的物理存儲(chǔ)單元中,即通過數(shù)據(jù)元素物理存儲(chǔ)的相鄰關(guān)系來反映數(shù)據(jù)元素之間邏輯上的相鄰關(guān)系,采用順序存儲(chǔ)結(jié)構(gòu)的線性表通常稱為順序表。
順序表是將表中的結(jié)點(diǎn)依次存放在計(jì)算機(jī)內(nèi)存中一組地址連續(xù)的存儲(chǔ)單元中。
順序表的基本操作
順序表的聲明
順序表的初始化
把順序表初始化為空的順序表;只需把順序表的長(zhǎng)度length置為0即可;
這里不需要判斷PSeqList L
是否為空指針,因?yàn)樵谏芍羔槙r(shí)就應(yīng)該確保指針不為空.如果你用了空指針那么你活該如此.
按序號(hào)查找
查找順序表中第i個(gè)元素的值(按序號(hào)查找),如果找到,將將該元素值賦給e。查找第i個(gè)元素的值時(shí),首先要判斷查找的序號(hào)是否合法,如果合法,返回第i個(gè)元素對(duì)應(yīng)的值。
按值查找
查找數(shù)據(jù)元素e在表中的位置,可以從表頭開始一直遍歷表中元素,如果找到與e相等的元素則返回元素在表中的位置,沒有找到則返回-1;
插入操作
在數(shù)據(jù)表的第i個(gè)位置插入元素,首先確保插入位置合法,不能越界(大于順序表最大長(zhǎng)度或者小于零),要按照順序插入元素(插入元素的位置不能大于順序表的長(zhǎng)度).
要在順序表的第i個(gè)位置插入元素e,先移動(dòng)最后一個(gè)元素,再移動(dòng)倒數(shù)第二個(gè)元素,依次類推;在插入元素之后要將表長(zhǎng)加一;
刪除操作
刪除數(shù)據(jù)表中的第i個(gè)元素,需要將表中第i個(gè)元素之后的元素依次向前移動(dòng)一位.
進(jìn)行刪除操作之前要判斷位置合法性,凡是超出或小于順序表長(zhǎng)度的位置均非法.
如果有任何疑問歡迎在評(píng)論區(qū)反饋