您好,登錄后才能下訂單哦!
在我們?nèi)粘I钪校覀冏龊芏嗍虑槎夹枰抨?。比如:學(xué)生在食堂窗口打飯要排隊,去超市購物,在收銀臺付款時要排隊,甚至去醫(yī)院掛號也需要排隊??傊?,隊列,在我們?nèi)粘V校浅3R?。畢竟排隊,是遵守秩序的標志,而遵守秩序是文明的標志。我們都想要生活在一個文明的國度,如果,一個國家沒有秩序,那情況真的不堪設(shè)想。
對于排隊這種有限的序列,就是線性表。既然是序列,那也就意味著,線性表各個元素之間是有順序的。除了第一個和最后一個元素外,其他的每一個元素都有唯一的一個直接前驅(qū)元素和唯一的一個直接后繼元素。
那么,關(guān)于線性表的精準定義:
若將線性表記為(a1,……,ai-1, ai, ai+1, ……, an),則表中 ai-1領(lǐng)先于ai,ai領(lǐng)先于ai+1,稱ai-1是ai的直接前驅(qū)元素,ai+1是ai的直接后繼元素。當(dāng) i = 1, 2, ……,n-1時,ai有且只有一個直接后繼,當(dāng)i = 2, 3, ……, n時, ai有且僅有一個直接前驅(qū)。所以,線性表元素的個數(shù)n(n>=0),定義為線性表的長度,當(dāng)n = 0時,稱為空表。
線性表的基本抽象數(shù)據(jù)類型有那么幾種:
ADT 線性表 (list)
Data
線性表的數(shù)據(jù)對象集合為{ a1, a2, ……, an }, 每個元素的類型均為DataType。其中,除第一個元素a1外,每一個元素有且只有一個直接前驅(qū)元素,除了最后一個元素an外,每一個元素有且只有一個直接后繼元素。數(shù)據(jù)元素之間的關(guān)系是一對一的。
Operation
InitList ( *L ) : 初始化操作,建立一個空的線性表。
ListEmpty ( L ) : 若線性表為空,返回ture,否則返回false。
ClearList ( *L ) : 將線性表清空
GetElem ( L, i, *e ) : 將線性表L中第i個位置的元素返回給e
LocateElem ( L, e ) : 在線性表L中查找與給定元素e相等的元素,若查找成功,則返回該元素的下標,否則返回0表示失敗。
ListInsert ( *L, i, e ) : 在線性表L中第i個位置插入新元素e。
ListDelete ( *L, i, e ) : 刪除線性表L中第i個位置的元素,并且用e返回其值。
ListLength ( L ) : 返回線性表L的元素個數(shù)。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。