一、题目
演示示例:
二、测试代码
class Solution {
public int[] createTargetArray(int[] nums, int[] index) {
ArrayList<Integer> list=new ArrayList<Integer>();//创建Integer泛型ArrayList动态数组
for(int i=0;i<index.length;i++)
{
list.add(index[i],nums[i]);//add(int index, Object element)表示在指定位置插入指定元素
}
int[] target=new int[list.size()];
for(int j=0;j<list.size();j++)//从list中依次取值放入目标数组中
{
target[j]=list.get(j);
}
return target;
}
}
三、运行情况
四、刷题总结
1、本题需要实现的是下标从0开始,长度为n数组的 i 位置处插入元素,即将原来数组中区间 [i, n]中的元素从全部向后移动一位,然后在 i 位置插入带插入指定元素。主要的解题思路是:Java中ArrayList类中的add(int index, Object o)函数可将指定元素插入到指定位置,再将List中元素依次放到目标数组中即可。
2、ArrayList接口常用方法:
1、add(Object element): 向列表的尾部添加指定的元素。
2、size(): 返回列表中的元素个数。
3、get(int index): 返回列表中指定位置的元素,index从0开始。
4、add(int index, Object element): 在列表的指定位置插入指定元素。
5、set(int i, Object element): 将索引i位置元素替换为元素element并返回被替换的元素。
6、clear(): 从列表中移除所有元素。
7、isEmpty(): 判断列表是否包含元素,不包含元素则返回 true,否则返回false。
8、contains(Object o): 如果列表包含指定的元素,则返回 true。
9、remove(int index): 移除列表中指定位置的元素,并返回被删元素。
10、remove(Object o): 移除集合中第一次出现的指定元素,移除成功返回true,否则返回false。
11、iterator(): 返回按适当顺序在列表的元素上进行迭代的迭代器。