总览
顺序表
定义
顺序表使用数组实现,成员变量有一个静态数组,一个elementNumber代表顺序表的有效长度
当静态数组满了之后需要扩容,申请一直比之前大一倍的数组,将旧数据复制过去
常考操作
插入
时间复杂度:
删除
时间复杂度:
按值查找
时间复杂度:
拓展操作
查找最小元素
逆序顺序表
删除数据
//根据值删除元素,删除多个
public void deleteByValue(int value) throws Exception {
//边扫描边统计不等于value的数,当相等得时候count不再加1
//并将不等于value的前移到count的位置,最后修改有效元素个数
//1,2,3,3,3,4
int count=0;
for (int i = 0; i < length; i++) {
if(array[i]!=value){
array[count]=array[i];
count++;
}
}
length=count;
}
删除有序表[a,b]的所有元素
使有序表变为Set
俩个有序表的合并
俩个线性表位置互换
有序表最快查找
数组循环左移n个位置
找出俩升序序列合并后的中位数
找出数组的主元素
找出数组中未出现的最小正整数