2021 01 14線性表的定義和一些基本操作

2021-10-14 16:40:02 字數 1186 閱讀 3962

本人大一新生(非計算機專業)上學期跟著學校的安排學習了c語言,可惜院系並不準備讓我們繼續學習資料結構,因此趁著寒假時間我打算自學一下資料結構,並把一些總結發到我的部落格上,出現的一些錯誤希望各位大佬能夠提出。而這篇文章就從最基礎的線性表談起。

(1.)線性表(list)是零個或者是多個元素的有限序列。

首先呢我們要強調的是序列,只有是有序的序列才能夠幫助我們用計算機完成更加複雜的任務,其次線性表強調是有限的,就如陣列一樣它們的元素都是有限的,系統好為它們分配合適的記憶體單元,對於我們所認知的無限的序列往往只存在數學的概念當中,在計算機中並不存在。

同時資料元素又被稱為節點,節點的個數也就是表長了。

(2.)

其中呢ai被稱為ai-1的後繼元素,當然反過來就是ai-1就是ai的前驅元素了。

而線性表表的個數n定義為線性表的長度,當n等於0的時候,稱為空表。

ai表示第i個元素,稱i為資料元素ai中線性表中的位序。

注意 :在比較複雜的線性表當中呢,乙個資料元素可以由若干個資料項組成。就如班級成績單一樣,每乙個人所有的成績資訊就是乙個資料元素,你的每一科的成績就是若干的資料項

(1.)線性表的資料物件集合為{a1,a2,…an},每乙個元素的型別均為datatype。資料元素之間的關係是一對一的關係。

(2)線性表的八大基本操作

initiate

(*l);//初始化,建立乙個全新的空線性表l

listempty

(l);// 判斷線性表是否為空表如果是返回true(1), 否返回false(0)

clearlist(*l);//將線性表清空

listlength

(l); //求表長

getelem

(l,i,*e);//讀表元素,將第i位置上的元素返回給e

locateelem

(l,i);//定位

listinsert

(*l,i,e);//插入

listdelete

(*l,i,*e);//刪除第i個元素,並用e返回其值

例子:實現線性表的集合a和b的並集操作

**如下:

void

union

(list *la,list lb)

}

:以上就是今天要講的內容,簡單的介紹類一些線性表的概念和操作。

線性表 定義

線性表分類 線性表分為兩種 1.順序儲存 順序表 2.鏈式儲存 單鏈表雙鏈表 迴圈鍊錶 靜態鍊錶 其中單鏈表,雙鏈表,迴圈鍊錶都是由指標實現,而靜態鍊錶由陣列實現 線性表的基本概念 線性表的特點 線性表中元素個數是有限的 表中具有邏輯上的順序性,表中元素有其先後次序 表中元素都是資料元素,每個元素都...

線性表 定義和術語

程式裡經常需要將一組 某型別的 元素作為整體管理和使用該組資料裡元素個數可能變化 可以加入或刪除元素 有可能把需要這樣一組元素看成乙個序列,元素在序列裡的位置和順序可能表示實際應用中的某種有意義的 資訊或關係。這樣一組元素 的序列 的抽象就是線性表 簡稱表 線性表是一種元素集合,其中還記錄著元素箭的...

線性表的定義

線性表 零個或多個資料元素的有限序列。3.1開場白 今天我們要開始學習資料結構中最常用和最簡單的一種結構,在介紹它之前先講個例子。我經常下午去幼兒園接送兒子,每次都能在門口看到老師帶著小朋友們,乙個拉著另乙個的衣服,依次從教室出來。而且我發現很有規律的是,每次他們的次序都是一樣。比如我兒子排在第5個...