java資料結構系列 排列(2) 有序陣列

2021-09-07 04:14:09 字數 1194 閱讀 9775

package array;

/** * 對陣列排序。當新增到陣列保持有序陣列元素;

* @author wl

* */

public class myorderarray

public myorderarray(int capacity)

/*** 向陣列中插入元素,並維護陣列中元素的有序性

*/public void add(long data)

int i;

for(i=0;idata)

} for(int j=elements;j>i;j--)

array[i]=data;

elements++; }

/*** 刪除index處的元素

* @param index

*/public void delete(int index)

for(int i=index;i<=elements;i++)

elements--; }

/*** 刪除元素data

* @param data

*/public void delete(long data)else

elements--;

} }/**

* 用二分查詢(折半查詢)法查詢陣列中data的下標位置

* @param data

* @return

*/public int binarysearch(long data)else

} return -1;

} /**

* 查詢index處的元素

* @param index

* @return

*/public long search(int index)

return array[index]; }

/*** 查詢array中data值所在下標

* @param data

* @return

*/public int search(long data)

} return -1; }

/*** 列印陣列中的內容

*/public void display()

system.out.print(array[elements-1]);

system.out.println("]");

}}

資料結構與演算法(2) 棧和排列

棧 是乙個後進先出 last in first out,lifo 的線性表,它要求 只在表尾 進行刪除和插入操作。所謂的棧,其實就是乙個特殊的線性表 順序表,鍊錶 但是它在操作上有一些特殊的要求和限制 其中。對於棧來說,這個表尾稱為棧的棧頂 top 相應的表頭稱為棧底 bottom 棧的插入操作 p...

資料結構 2 棧結構(java實現棧結構)

棧結構是按照 後進先出 last in first out,lifo 的原則處理資料的。在棧結構中,只有棧定的元素是可以訪問的。public class stack 入棧同時棧頂下標加1 public void push int elem else 出棧刪除棧頂元素,同時棧頂元素下標減1 publi...

資料結構 有序表查詢

對於已經排好序的表,有 在有序表中,取中間的記錄進行比較,如果相同,匹配成功。如果比中間值小,就在中間記錄的左半區進行查詢,如果大,就在右半區。public static intbinarysearch int key return 1 插值查詢是對折半查詢的改進。折半時 mid l ow h ei...