я попытался решить проблему самостоятельно, но не получил никаких хороших результатов, также приложил свой код к проблеме - PullRequest
0 голосов
/ 22 сентября 2018

В данном массиве целых чисел, если какое-либо целое число повторяется, замените его числом больше, чем число, которое еще не было вставлено в массив.Например.1, 3, 4, 5, 3 Выход: 1, 3, 4, 5, 6


class duplicates{
  public static void main(String[] args) {
    Scanner sc=new Scanner(System.in);
    System.out.println("input the size");
    int n = sc.nextInt();
    int arr[]=new int[n];
   System.out.println("enter the elements of an array");
    for (int i=0;i<n;i++)
    {
       arr[i]=sc.nextInt();
    }
    Arrays.sort(arr);

    for(int i=0;i<n;i++){
      for(int j=i+1;j<n;j++){
        if(arr[i]==arr[j])
        {
          arr[j]=arr[n-1]+48;
          n--;

        }
      }
    }
   System.out.println("array is" + Arrays.toString(arr));

  }
}

1 Ответ

0 голосов
/ 22 сентября 2018

это будет решением вышеуказанной проблемы.

import java.util.*;
class duplicates {
  public static void main(String[] args) {
    Scanner sc=new Scanner(System.in);
    System.out.println("input the size");
    int n = sc.nextInt();
    int arr[]=new int[n];
   System.out.println("enter the elements of an array");
    for (int i=0;i<n;i++)
    {
       arr[i]=sc.nextInt();
    }
    Arrays.sort(arr);
   int nw = 1;
    for(int i=0;i<n;i++){
      for(int j=i+1;j<n;j++){
        if(arr[i]==arr[j])
        {
          arr[j]=arr[n-1]+nw;
          nw++;


        }
      }
    }
   System.out.println("array is" + Arrays.toString(arr));

  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...