Java 如何创建一个函数,该函数返回一个包含另一个数组重复值的新数组
我试图解决一个问题,返回一个新的双数组,其中包含来自另一个双数组的重复值。我不能在这个问题中使用hashset或ArrayLists。我尝试使用brunt-force方法交换原始数组和我创建的新数组的索引。然而,我没有得到预期的结果。我附上了我的代码和输出的截图。如果此函数正确,示例结果包括:新的双精度[]{11,22,33,44,55,66,77,88}<--RemovedDuplicates(新的双精度[]{11,11,11,22,33,44,44,44,44,44,55,55,66,77,88})我在中阅读了您问题的解决方案。这里我包括了到目前为止我发现的东西。在下面的代码中,在removeDuplicates函数中,将创建一个临时双数组,用于在删除重复项后保存新数组 这里使用的逻辑非常简单。首先,它检查给定数组是否没有元素或只有一个元素,如果有,它只返回数组,因为没有重复 然后它开始遍历元素,如果附近的两个元素不相等(意味着如果元素是唯一的),那么这些元素将存储在新的temp[]数组中。如果发现重复项,则忽略它们,而不将其存储在temp[]数组中 最后,它将给定数组的最后一个元素存储到temp[]数组中 然后,它使用temp[]数组修改原始数组,并返回不重复的原始数组Java 如何创建一个函数,该函数返回一个包含另一个数组重复值的新数组,java,Java,我试图解决一个问题,返回一个新的双数组,其中包含来自另一个双数组的重复值。我不能在这个问题中使用hashset或ArrayLists。我尝试使用brunt-force方法交换原始数组和我创建的新数组的索引。然而,我没有得到预期的结果。我附上了我的代码和输出的截图。如果此函数正确,示例结果包括:新的双精度[]{11,22,33,44,55,66,77,88}
static int removeDuplicates(double arr[], int n)
{
// return the array itself, if it is empty or contains only one element
if (n==0 || n==1)
return n;
//creating a temporary array to hold new array data
double[] temp = new double[n];
// Start traversing elements
int j = 0;
for (int i=0; i<n-1; i++)
//checking for duplicates and store elements in
//temp[] array if not duplicated.
if (arr[i] != arr[i+1])
temp[j++] = arr[i];
// Store the last element as whether
// it is unique or repeated, it hasn't
// stored previously
temp[j++] = arr[n-1];
// Modify original array
for (int i=0; i<j; i++)
arr[i] = temp[i];
return j;
}
static int removeDuplicates(双arr[],int n)
{
//如果数组为空或仅包含一个元素,则返回数组本身
如果(n==0 | | n==1)
返回n;
//创建临时数组以保存新数组数据
双精度[]温度=新双精度[n];
//开始遍历元素
int j=0;
for(int i=0;iMy屏幕截图是“在此处输入图像描述”链接。谢谢!不要在屏幕截图中显示您的代码。请将相关部分复制并粘贴到问题中,并使用提供的标记语法格式化它们。