順序表的相關操作

2021-09-25 13:03:47 字數 2312 閱讀 8787

public

class

ds3_0723

//増//尾插

public

void

pushback

(int element)

//頭插

public

void

pushfront

(int element)

a[0]

=element;

size++;}

//中間插入 時間複雜度為o(n)

public

void

insert

(int index,

int element)

ensurecapacity()

;for

(int i=size-

1;i>=index;i--

) a[index]

=element;

size++;}

//刪//尾刪

public

void

popback()

size--

; a[size]=0

;}//頭刪

public

void

popfront()

for(

int i=

0;i<=size-

2;i++

) size--

;//a[size]=0;

//array[--size] = 0;

}//中間刪除

public

void

earse

(int index)

if(index<

0||index>size)

for(

int i=index;i<=size-

2;i++

) size--

; a[size]=0

;}// 刪除掉某乙個元素,如果出現多次,刪除第一次出現的

public

void

remove

(int element)

}//刪掉所有與element相等的數

public

void

removeall

(int element)

//2.時間複雜度: o(n) 空間複雜度: o(n)

// int newarray=new int[a.length];

// int j=0;

// for(int i=0;i

// if(a[i]!=element)

// }

// a=newarray;

// size=j;

//3.時間複雜度:o(n) 空間複雜度:o(1)

int j=0;

for(

int i=

0;isize=j;

}// 查

//返回某數的下標

public

intsearchindex

(int element)

}return-1

;}//返回某下標對應的數

public

intsearchelement

(int index)

return a[index];}

// 改

public

void

change

(int index,

int element)

a[index]

=element;

}//列印

public

void

print()

system.out.

println()

; system.out.

println

("當前容量為:"

+a.length)

; system.out.

println()

;}//保證記憶體夠用,否則擴容

private

void

ensurecapacity()

int newcapacity=a.length*2;

int[

] newarray=

newint

[newcapacity]

;for

(int i=

0;i) a=newarray;

}public

static

void

main

(string[

] args)

}

順序表的相關操作

include include include struct arr void init arr struct arr parr,int length bool insert arr struct arr parr,int pos,int pval bool delete arr struct ar...

順序表的相關操作

順序表 靜態順序表 使用定長陣列儲存。動態順序表 使用動態開闢的陣列儲存。每一種資料結構說到底都逃不過增刪改查,相對而言順序表的相關操作比較簡單,話不多說,咱們直接上 includeusing namespace std 順序表的定義 typedef struct seqlist seqlist 順...

靜態順序表的相關操作

話不多說,直接看 include typedef int datatype define max size 10 typedef struct seqlist seqlist,pseqlist typedef struct seqlist pseqlist void seqlistinit pseq...