資料結構(1) 線性表(順序儲存結構)

2021-07-29 14:03:34 字數 2061 閱讀 5551

概念:指的是用一段位址連續的儲存單元依次儲存線性表的資料元素;用一維陣列來實現順序儲存結構;

重要屬性:儲存空間的起始位置、線性表的最大儲存量、線性表的當前長度;

優點:無須為表示表中元素之間的邏輯關係而增加額外的儲存空間;可以快速的檢視任意位置的元素。

缺點:插入和刪除操作需要移動大量元素;當線性表長度變化比較大時,難以確定儲存空間的容量;造成儲存空間的「碎片」;

/*

* 1. 順序結構(陣列)實現單鏈表

*/public

class myarraylist

private

static final int default_size = 10;// 陣列的預設長度

private

int size;// 記錄元素的個數

private

int capacity;// 記錄陣列的長度

private object elementdata;// 儲存元素的陣列

// 以預設陣列長度建立空順序線性表

public

myarraylist()

// 以乙個初始化元素來建立順序表

public

myarraylist(t element)

// 以初始化元素和初始大小建立順序線性表

public

myarraylist(int initsize, t element)

elementdata = new object[capacity];

elementdata[0] = element;

size++;

}// 獲取線性表元素的個數

public

intlength()

// 獲取順序線性表中索引為i出的元素

public t getvalue(int i)

return (t) elementdata[i];

}// 查詢順序線性表中製指定元素的索引

public

intlocate(t element)

return -1;

}// 向線性表的指定位置插入乙個元素

public

void

insert(t element, int index)

ensurecapacity(size + 1);

// 將index處以後的所有元素向後移動一格

system.arraycopy(elementdata, index, elementdata, index + 1, size

- index);

elementdata[index] = element;

size++;

}public

void

add(t element)

// 擴充底層陣列長度

private

void

ensurecapacity(int mincapacity)

elementdata = arrays.copyof(elementdata, capacity);}}

// 刪除順序線性表中指定索引出的元素

public t delete(int index)

t oldvalue = (t) elementdata[index];

int nummoved = size - index - 1;

if (nummoved > 0)

elementdata[--size] = null;// 清空最後乙個元素

return oldvalue;

}// 刪除最後乙個元素

public t remove()

// 判斷線性表是否為空表

public boolean empty()

// 清空線性表

public

void

clear()

// 重寫tostring方法

public string tostring() else

int len = sb.length();}}

}

資料結構 線性表 順序儲存結構

1.線性表定義 線性表 list 零個或多個資料元素的有限序列。關鍵知識點 1.首先它是乙個序列,元素之間室友順序的 2.線性表強調的是有限的,元素個數是有限的 3.在較複雜的線性表中,乙個資料元素可以由若干個資料項組成。其數學定義 若將線性表標記為 a1,ai 1 ai ai 1 a n 則表中的...

資料結構 線性表順序儲存結構

線性表是一種典型的線性結構。其基本特點是線性表中的資料元素是有序且是有限的。在這種結構中 存在乙個唯一的被稱為 第乙個 的資料元素 存在乙個唯一的被稱為 最後乙個 的資料元素 除第乙個元素外,每個元素均有唯一乙個直接前驅 除最後乙個元素外,每個元素均有唯一乙個直接後繼。線性表 linear list...

《資料結構 線性表》順序儲存

一 什麼是線性表?線性表定義 0個 或 多個 資料元素 有限 序列。序列 這個必須是有順序的,若元素存在多個,則第乙個元素無前驅,最後乙個元素無後驅。乙個元素只能有乙個前驅 後驅。有限 線性表必須是有限的,無限的只存在於數學中。線性表元素個數必須是 大於 0,當 n 0 時,稱為空表。二 線性表抽象...