順序表是用一段實體地址連續的儲存單元依次儲存資料元素的線性結構,一般情況下採用陣列儲存。在陣列上完成資料的增刪查改。
順序表一般可以分為:
靜態順序表:使用定長陣列儲存。
動態順序表:使用動態開闢的陣列儲存。
注:靜態順序表只適用於確定知道需要存多少資料的場景。靜態順序表的定長陣列導致n定大了,空間開多 了浪費,開少了不夠用。所以現實中基本都是使用動態順序表,根據需要動態的分配空間大小
//順序表 的元素型別int
public
class
myarraylist
//增*
//頭插(注意畫圖:選擇實心和空心,空心在前,實心在後)
public
void
pushfront
(int element)
array[0]
= element;
size++;}
//尾插
public
void
pushback
(int element)
//插入指定位置
public
void
insert
(int index,
int element)
//實心
ensurecapacity()
;for
(int i = size-
1;i >= index;i--
) array[index]
= element;
size++;}
//刪*
//尾刪
public
void
popback()
array[
--size]=0
;}//頭刪
public
void
popfront()
for(
int i =
0;i <= size-
2;i++
) array[
--size]=0
;}//刪除指定位置
public
void
earse
(int index)
if(index <
0||index >= size)
//實心
for(
int i = index+
1; i < size;i++
) array[
--size]=0
;}//刪除掉某乙個元素,如果出現多次,刪除第一次出現的
public
void
remove
(int element)
}//刪除掉某乙個元素,如果出現多次,全部刪除
public
void
removeall
(int element)
*/int newarray = new int[array.length];
int j = 0;
for (int i = 0; i < size; i++)
} array = newarray;
size = j;
*/int j =0;
for(
int i =
0; i < size; i++)}
size = j;
}//查
//返回element在順序表中的下標,如果出現多次,返回帶一次
public
intindexof
(int element)
}return-1
;}//改public
intget
(int index)
return array[index];}
public
void
set(
int index,
int element)
array[index]
= element;
}// 列印
public
void
print()
system.out.
println()
;}//保證容量夠用,否則進行擴容
private
void
ensurecapacity()
int newcapacity =array.length*2;
int[
] newarray =
newint
[newcapacity]
;for
(int i =
0;i < size;i++
) array = newarray;
}//返回順序表容量
public
intsize()
//判斷順序表是否為空
public
boolean
isempty()
public
static
void
main
(string[
] args)
}
資料結構之順序表
首先是標頭檔案seqlist.h ifndef seqlist h define seqlist h include includeusing namespace std define elemtype int define seqlist default size 10 typedef struc...
資料結構之順序表
順序表的思想容易了解,但是 不容易掌握,我這裡根據老師所提供的 進行一下簡單的總結 這個 包含順序表的查詢,插入,刪除,建表,輸出資料 includeusing namespace std define ok 1 define error 0 define overflow 2 typedef in...
資料結構之順序表
順序表就是按照順序儲存方式儲存的線性表,該線性表的結點按照邏輯次序一次存放在計算機的一組連續的儲存單元中如下圖 由於順序表是一次存放的,只要知道了該順序表的首位址以及每個資料元素所占用的儲存長度,那麼我們就很容易計算出任何乙個資料元素 也就是資料繫結點 的位置。1 結點資料型別 public cla...