- Java中必须先进行初始化分配空间之后才可以使用,有三种初始化的方式:
- 先使用new指定数组大小,再进行初始化:type[] arrayName = new type[];;
- 在初始化时直接赋值:type[] arrayname =new type[] {值1,值2,值3…,值n};;
- 在开辟空间后直接进行赋值,省略初始化环节:type[] arrayName = {值1,值2,值3…,值n};;
length | length() | size() |
---|---|---|
数组中的属性 ** | String**中的length()方法 | 泛型集合的数目 |
- **数组赋值:**只有在初始化可以整个数组赋值,方法中用到的赋值,只能单独给每一个数组元素赋值。
- Java中的length,length(),size()用法比较
- 代码逻辑:通常情况下要使用空间换时间的方法来优化算法
以本题为例,暴力算法需要两层循环,最坏情况下需要的时间复杂度为O(n²),空间复杂度为O(1); hash表的应用在最坏的情况下需要时间复杂度为O(n),空间复杂度为O(n),理想情况下时间复杂度甚至小于O(n)。
在数据结构中,hash表中包括含两个元素val和key,
此题中用到的是getContains()和put()方法