public
class
myarray
/** * 構造方法可以自定義陣列底層容量大小
* * @param capacity
*/public
myarray
(int capacity)
/** * @desc 獲取當前陣列當前訪問的索引
* @return int
* @author zyw
* @date 2023年3月3日上午11:48:11
*/public
intgetindex()
/** * @desc 獲取當前陣列的資料個數
* @return int
* @author zyw
* @date 2023年3月3日上午11:48:33
*/public
intgetcapacity()
/** * @desc 向陣列元素後新增乙個元素
* @param e
* @author zyw
* @date 2023年3月3日上午11:49:47
*/public
void
addlast
(int e)
data[index]
= e;
index++
;// 以上兩行也可以這樣寫:data[index++]=e;
// 此方法可以呼叫add方法:add(index,e),在當前索引新增乙個元素
}/**
* @desc 特定索引
* @param insertindex
* @param e
* @author zyw
* @date 2023年3月3日上午11:55:15
*/public
void
add(
int insertindex,
int e)
if(insertindex <
0|| insertindex > index)
for(
int i = index -
1; i >= insertindex; i--
) data[insertindex]
= e;
index++;}
/** * @desc 在陣列最前面新增乙個元素
* @author zyw
* @date 2023年3月3日下午12:02:51
*/public
void
addfirst
(int e)
/** * @desc 獲取指定索引處的元素
* @param index
* @return int
* @author zyw
* @date 2023年3月3日下午12:10:43
*/public
intget
(int index)
return data[index];}
/** * @desc 修改陣列元素
* @param index
* @param e
* @author zyw
* @date 2023年3月3日下午12:15:25
*/public
void
set(
int index,
int e)
data[index]
= e;
}/**
* @desc 判斷陣列是否包含乙個元素
* @param e
* @return boolean
* @author zyw
* @date 2023年3月3日下午12:17:35
*/public
boolean
contains
(int e)
return
false;}
/** * @desc 獲取指定元素的索引
* @param e
* @return int
* @author zyw
* @date 2023年3月3日下午12:19:35
*/public
intfind
(int e)
return-1
;}/** * @desc 刪除指定索引的元素
* @param index
* @return int
* @author zyw
* @date 2023年3月3日下午12:24:53
*/public
intremove
(int index)
int res = data[index]
;for
(int i = index +
1; i <
this
.index; i++
)this
.index--
;return res;
}/**
* @desc 刪除最後乙個元素
* @return int
* @author zyw
* @date 2023年3月3日下午12:26:51
*/public
intremovelast()
/** * @desc 刪除陣列中第乙個為e的元素,並返回索引
* @param e
* @return int
* @author zyw
* @date 2023年3月3日下午12:33:02
*/public
intremoveelement
(int e)
/** * @desc 刪除所有的元素e並返回元素的索引
* @param e
* @return myarray
* @author zyw
* @date 2023年3月3日下午2:18:05
*/public myarray removeallelement
(int e)
}return myarray;
}/**
* @desc 刪除最後乙個陣列元素
* @return int
* @author zyw
* @date 2023年3月3日下午12:27:41
*/public
intremovefirst()
@override
public string tostring()
else
}return res.
tostring()
;}}
java資料結構之陣列
首先定義乙個陣列類class myarray 空參構造時預設是長度為3的陣列 public myarray int maxsize 有參構造時引數為陣列長度 接下來是對陣列的插入 public void insert int a 然後是對陣列的刪除 public void delete int in...
java資料結構之陣列棧
根據陣列線性表改編而來的陣列棧 關於線性表如何實現的可以參照前面線性表的實現 public class stack public void push t data public t pop public boolean isempty public int getsize public t gete...
Java資料結構之佇列(二)
迴圈佇列避免空間浪費 迴圈佇列不使用動態陣列,底層的動態陣列自己維護 author zyw param public class loopqueueimplements myqueue public loopqueue public int getcapacity override public v...