我正在尝试创建一个方法,用两个邻居中较大的一个替换数组中的数字。到目前为止,我有这个:
public void replaceWithBigNeighbor(double[] array)
{
for(int i=0; i < array.length; i++)
{
if(i != 0 && i != array.length-1)
{
double leftNeighbor = array[i-1];
double rightNeighbor = array[i+1];
if(leftNeighbor > rightNeighbor)
{
array[i] = leftNeighbor;
}
else if(leftNeighbor < rightNeighbor)
{
array[i] = rightNeighbor;
}
}
}
}
问题在于我无法想出一种方法来阻止在每个后续数字上使用最大数字,因为循环使得初始数组被更改。