所以基本上我的问题是:
我有一个数组(第一个数组,数组a),它有20个整数值在0到20之间的元素(它们可以是随机的),比如:
1 2 3 4 5 6 1 2 3 4
1 2 3 4 5 6 1 2 3 4
我需要创建另一个包含40个元素的数组(第二个数组,数组b),该数组的值与第一个数组的值相同,但关键是第一个数组的值在第二个数组中使用,但在以下模式中:
1 1 2 2 3 3 4 4 5 5
6 6 1 1 2 2 3 3 4 4
5 5 6 6 1 1 2 2 3 3
4 4 5 5 6 6 1 1 2 2
基本上,第二个数组的值从一开始就是:
B[0] = A[0]
B[1] = A[0]
B[2] = A[1]
B[3] = A[1]
etc.
我需要使用do while循环来实现它。
do {
i++;
B[i] = A[i];
if(i>1) {
B[i] = A[i-1];
}
System.out.print("\t" + B[i]+ " ");
}
while(i < 20);
现在我被这个问题困住了,我不知道第二个数组(b)是如何填写的。感谢您的帮助!
3条答案
按热度按时间a9wyjsp71#
你可以这样做:
这里要做的是将每个元素从
2x
以及2x + 1
它的索引。然后你可以像你想的那样填补“空白”。5uzkadbs2#
下面是一个do while循环的示例,它完全按照您的要求执行。
这个指纹
1 1 2 2 3 3 4 4 5 5 6 6 1 1 2 2 3 3 4 4 1 1 2 2 3 3 4 4 5 5 6 6 1 1 2 2 3 3 4 4
.jaql4c8m3#
类似于用于:
在这种情况下需要两个初始条件
index_a
; 以及index_b
你想做的手术以及循环条件
index_a < A.length
.这个
B[index_b++] = B[index_b++] = A[index_a++];
与相同