Java program to find missing numbers in an array?

Поделиться
HTML-код
  • Опубликовано: 7 фев 2025

Комментарии • 19

  • @svr9546
    @svr9546 Год назад +10

    just add Collections.. to findout Hashset Max and Min number
    import java.util.Collections;
    import java.util.HashSet;
    public class MissingNumberDemo {
    public static void main(String[] args) {
    Integer a[]= {2,4,1,5,7,8,12};
    missingNumbers(a);
    }
    private static void missingNumbers(Integer[] a) {
    HashSet set = new HashSet();

    for(int num:a) {
    set.add(num);
    }
    int max=Collections.max(set);
    int min=Collections.min(set);

    for(int i=min; i

  • @krayush1109
    @krayush1109 2 года назад +5

    One of the best YT Channel to Learn Programming 🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟

  • @suganyag1224
    @suganyag1224 2 года назад +6

    try to change any of the numbers. say make 2 as 12 in the array. The solution wouldn't work. we have to find the min and max element in the array and iterate. can use a treeset.
    import java.util.TreeSet;
    public class MissingNumbers {

    public static void main(String args[]) {
    Integer arr[] = {12,4,0,7,1,8,5};
    missingNos(arr);
    }

    public static void missingNos(Integer a[]) {
    TreeSet set = new TreeSet();

    for(int n : a) {
    set.add(n);
    }
    int small = set.first();
    int large = set.last();

    for(int i=small ; i

    • @sadhanasahu3623
      @sadhanasahu3623 2 года назад

      I was also thinking about this solution

    • @ankushgundale9692
      @ankushgundale9692 2 года назад

      Yes you are correct this logic is not working if we change the numbers in the array....with your approach it worked fine for me as well...Dear author please add the same

    • @akshayshinde3869
      @akshayshinde3869 Год назад

      Good

  • @Sivasiva-ug4xc
    @Sivasiva-ug4xc 4 месяца назад +1

    First you need find max element and store that to n it perfectly

  • @sasidharan4401
    @sasidharan4401 2 года назад +2

    Just assume if the int a[] ={2,8,3}..to find the missing numbers ..how to do this?

  • @sivasankarkuna9079
    @sivasankarkuna9079 Год назад +2

    void printMissingNumbers(int[] nums) {
    Arrays.sort(nums);
    int counter =0;
    for (int i = 0; i < nums[nums.length-1];i++) {
    if (i==nums[counter]) {
    counter++;
    } else {
    System.out.println(i);
    }

    }
    }

  • @poojahani
    @poojahani Год назад

    Program wont work if we remove 3 elements in an array

  • @sainath2983
    @sainath2983 8 месяцев назад

    public class Program
    {
    static void Main(string[] args)
    {
    int[] nums = {2,4,1,5,7,8,0 };
    int n = nums.Max();
    for(int i =0;i< n; i++)
    {
    if (!nums.Contains(i))
    {
    Console.WriteLine(i);
    }
    }
    }
    }

  • @intrabull6696
    @intrabull6696 2 года назад +1

    nicee thankyou

  • @dhairyasheelpawar2817
    @dhairyasheelpawar2817 Год назад

    Wrong program
    If we find missing number from {2,8};
    Then it will not show all missing number between 2 and 8
    wrong
    wrong
    wrong
    wrong

  • @samahmahdi5511
    @samahmahdi5511 11 месяцев назад

    import java.util.HashSet;
    import java.util.Set;
    public class MissingNumberDemo {
    public static void main(String[] args) {
    int a[]= {3,5,9,0,2};
    Set list = missingNumbers(a);
    System.out.println(list);
    }
    public static Set missingNumbers(int[] num){
    Set missingnumber = new HashSet();
    Set list = new HashSet(num.length);
    for(int n : num){
    list.add(n);
    }
    int max = num[0], min = num[0];
    for(int i=1;i

  • @AkashVerma-em1gk
    @AkashVerma-em1gk 10 месяцев назад +1

    i would say, your code is not correct. check mine
    public static void main(String[] args) {
    // TODO Auto-generated method stub

    int[] arr = {0,1,2,3,4,5,10,15};
    HashSet hs = new HashSet();
    for(int i : arr) { hs.add(i); }

    Arrays.sort(arr);
    for(int i =0;i

  • @Karadkar007
    @Karadkar007 2 года назад +2

    can you explain why did you choose HashSet for this?

    • @intrabull6696
      @intrabull6696 2 года назад

      bcause default sorting nature order of HashSet is ascending when you remove the ! from contains() so you will get output 0124578 but when you use arraylist you will get 2,4,1,5,7,8,0 bcoz insertion order is preserved

    • @intrabull6696
      @intrabull6696 2 года назад

      but you can use anything bcoz your opretion is to find missing numbers so hashset not necessory