有人可以回答我的具体问题吗,我不能使用课堂上尚未涵盖的材料,必须这样做。
我正在尝试遍历排序数组,如果前一个数字 == 当前数字,它将计数存储在新数组的位置 n 中;当前一个数字 != 当前数字时,它会移动到新数组上的 n+1 并再次开始计数。
我现在正在调试它,但无法弄清楚它不起作用。任何帮助深表感谢。
// Get the count of instances.
int[] countOfNumbers = new int[50]; // Array to store count
int sizeOfArray = 0; // Last position of array filled
int instanceCounter = 1; // Counts number of instances
int previousNumber = 0; // Number stored at [k-1]
for (int k=1; k < finalArrayOfNumbers.length; k++) {
previousNumber = finalArrayOfNumbers[k-0];
if (previousNumber == finalArrayOfNumbers[k]) {
instanceCounter++;
countOfNumbers[sizeOfArray] = instanceCounter;
}
instanceCounter = 1;
sizeOfArray++;
countOfNumbers[sizeOfArray] = instanceCounter;
不要担心映射或任何事情,我只需要知道如果我有一个数组:
[20、20、40、40、50]
我可以回来
[2, 2, 1]