给定n>=0
,创建一个具有模式的数组{1,1, 2,1, 2, 3, ... 1, 2, 3 .. n}
。
作为一个例子,如果你给出n=3
,你的方法应该返回数组为{1,1,2,1,2,3}
.
我的解决方案在这里......
public int[] upSeries(int n) {
int var1 = n + 1;
int var2 = n;
int var3 = (var1*var2) / 2;
int arr_length = var3;
int value = 1;
int index = 0;
int[] arr = new int[arr_length];
for (int j = 0; j < arr.length; j++) {
for (int p = 0; p < j + 1; p++) {
arr[index] = value;
value++;
if (index == arr.length - 1) {
arr[index] = n;
break;
} else {
index++;
}
}
value = 1;
}
return arr;
}
什么是最好的解决方案?