LeetCode1389
思路:先将元素存放在集合中,集合中的add(index,value)方法可以在指定的位置插入元素。
再创建新的数组,将集合中的元素存入数组,直接用数组的话元素移动不好操作。
public class Demo01 {public static void main(String[] args) {int[] nums = {0,1,2,3,4};int[] index = {0,1,2,2,1};int[] targetArray = createTargetArray(nums,index);printArray(targetArray);}public static int[] createTargetArray(int[] nums, int[] index){ArrayList<Integer> list = new ArrayList<Integer>();for (int i = 0; i < nums.length; i++) {list.add(index[i],nums[i]);}int[] arr = new int[nums.length];for (int i = 0; i < nums.length; i++) {arr[i] = list.get(i);}return arr;}public static void printArray(int[] arr){//打印数组for (int i = 0; i < arr.length; i++) {if (i==0){if(arr.length==1){System.out.println("["+arr[0]+"]");}else {System.out.print("["+arr[i]);}}else if(i==arr.length-1){System.out.println(","+arr[i]+"]");}else {System.out.print(","+arr[i]);}}}}