陣列:資料結構中最基本的乙個結構就是線性結構,而線性結構又分為連續儲存結構和離散儲存結構。
所謂的連續儲存結構其實就是陣列。
優點: 查詢較快如果知道座標可以快速去地訪問
缺點: 刪除慢,大小固定
封裝陣列的增刪改查
1. 基類的定義
2. 增:新增的方法
3. 改:新增的方法
4. 查:新增的方法
5. 刪:新增的方法
6. 擴容的方法
public
class
array
public
array
(int capacity)
/** * 獲取陣列中的元素個數
* @return
*/public integer getsize()
/** * 獲取陣列的容量
* @return
*/public integer getcapacity()
/** * 判斷陣列是否為空
* @return
*/public
boolean
isempty()
// 增:新增**
//指定位置新增內容
public
void
add(
int index, e param)
//當內容大小size等於陣列長度length,進行擴容處理
if(size == data.length)
data[index]
= param;
size ++;}
//在首位新增
public
void
addfirst
(e param)
//在尾部新增
public
void
addlast
(e param)
//改:修改**
//修改指定位置的內容
public
void
set(
int index, e param)
data[index]
= param;
}//查:查詢**
//返回指定位置的內容
public e get
(int index)
return data[index];}
//是否包含指定元素
public
boolean
contains
(e param)
}return
false;}
//返回指定內容第乙個索引值
public integer find
(e param)
}return-1
;}//返回指定內容的所有索引值
public integer[
]findall
(e param)
}return indexs;
}//刪:刪除**
//指定位置刪除內容
public e remove
(int index)
e delresult = data[index]
;//將索引index之前的內容,統一向前移動乙個位置
for(
int i = index; i< size -
1; i++
) size --
; data[size]
= null;
//當內容長度小於等於data長度的四分之一,且data.length大於0,進行減容處理
if(size <= data.length/
4&& data.length/2!=
0)return delresult;
}//刪除第一位
public e removefirst()
//刪除最後一位
public e removelast()
//移除指定內容.如果存在 刪除成功,否則失敗
public
boolean
removeelement
(e param)
}//移除所有,遍歷刪除
public
void
removeallelement
(e param)
}//陣列容積處理
public
void
resize
(int newcapacity)
data = newdata;
}//交換兩個下標的值
public
void
swap
(int i,
int j)
e t = data[i]
; data[i]
= data[j]
; data[j]
= t;
}@override
public string tostring()
} bf.
("]");
return bf.
tostring();}}
結束 資料結構 陣列
建立陣列 大小為50 棧空間存myarray引用 堆空間存乙個大小為50,預設值為0的陣列。棧空間myarray引用指向堆空間該陣列。int myarray new int 50 public class testarray public class testarray if s intarray....
資料結構 陣列
陣列 就是相同型別的資料按一定順序排列的集合,把有限個型別相同的資料元素用乙個名字表示,通過編號來區分。名字即為陣列名,編號即為下標。陣列是最簡單 使用最廣泛的一種資料結構,其實就是一塊連續的記憶體,哪怕物理上不連續,邏輯上也是連續的,連續存放著一組相同型別資料元素。陣列的定義 type 變數名 n...
資料結構 陣列
陣列 陣列是一種佔據連續記憶體並按順序儲存資料的簡單的資料結構。建立陣列時,需要首先指定陣列的容量,然後依據大小分配記憶體。由於有時候我們需要使用陣列的容量不確定,可能開闢的記憶體遠超實際使用的記憶體,所以陣列的空間效率不好。由於陣列在記憶體中是連續的儲存空間,所以它的時間效率很高,可以在o 1 的...