ArrayList線性表Java實現

2021-08-14 12:35:09 字數 1443 閱讀 9578

自定義list介面

/**

* * @classname: list

* @description: 列表的介面

* @author xiaomu

* @date 2023年1月14日 下午4:25:05

* * @param

*/public inte***ce list

arraylist:

/**

* * @classname: arraylist

* @description: 線性表

* @author xiaomu

* @date 2023年1月14日 下午3:53:06

* * @param */

@suppresswarnings("all")

public

class arraylistimplements list

public

arraylist(int size)

private

void

expend()

@override

public boolean isempty()

@override

public

intlenth()

@override

public t get(int index)

return (t) elementdata[index];

}@override

public

intindexof(t elem)

for (int i = 0; i < size; i++)

}return -1;

}@override

public

void

insert(int index, t elem)

if (index != size)

elementdata[index] = elem;

size++;

}@override

public t remove(int index)

@override

public

void

add(t elem)

elementdata[size++] = elem;

}@override

public t pop()

@override

public

void

removeall()

size = 0;

}}

線性表的特點:

1、採用一段連續的儲存單元依次儲存線性表的資料元素

2、查詢的時間複雜度為o(1)

3、插入和刪除的時間複雜度為o(n)

4、線性表需要預分配儲存空間,可能會造成記憶體浪費

鏈式線性表和順序線性表

在這裡插入 片 線性表的儲存結構 typedef struct seqlist typedef struct seqlist 順序表基本操作 初始化順序表在這裡插入 片 intseqlist init seqlist list,int size 插入資料元素在這裡插入 片 intseqlist in...

線性表演算法題庫 線性表習題

鍊錶。若指標p指向某結點時,能夠根據該指標找到其直接後繼,能夠順後繼指標鏈找到p結點後的結點。但是由於不知道其頭指標,所以無法訪問到p指標指向的結點的直接前趨。因此無法刪去該結點。2.雙鏈表。由於這樣的鍊錶提供雙向指標,根據p結點的前趨指標和後繼指標可以查詢到其直接前趨和直接後繼,從而可以刪除該結點...

刪除線性表節點 線性表

submit 81 solved 66 submit status web board 已知長度為n的線性表a採用順序儲存結構,請寫一時間複雜度為0 n 空間複雜度為0 1 的演算法,該演算法刪除線性表中所有值為item的資料元素。o 1 表示演算法的輔助空間為常量 輸入 n 6 輸入資料 1 2 ...