数据结构
初始化 (构造方法)
增/删/查/改 (普通方法)
销毁 (可能不存在)
线性结构 顺序表
1.思考,写出伪代码。
1)从后往前移,避免覆盖。
2)空心:[size,1] 数据被移动的下标 k
实心:[size-1,0] 待移动的数据下标 s
a[k]=a[s];
k=s+1;
2)把伪代码译成java代码
考虑 数组容量(array.length)和已有数据个数(size)的个数
1.容量是够用的 size<array.length
2.容量不够怎么办
搬家(1.5倍or2倍)
int newCapacity=array.length*2;
1)找新家
int new[Array]=new int[newCapacity];
2)搬家
for(int i=0;i<size;i++)
{
new Array[i]=array[i];
}
3)发朋友圈
this.array=new Array;
4)老房子退掉
原来的数组对象,因为没有指向引用,成为垃圾了。
扩容的空间越小,浪费的空间越小。
扩容的空间越大,需要扩容的频率就越小。
扩容的空间一般是1.5倍或者2倍。
IDE(集成开发环境)
Integration Development Environment
notepad++ 编辑器(Text Editor)
javac 编译器(Compiler)
java 运行环境(Runtime)
jdb 调试器(Debugger)