How to merge two sorted arrays without duplicates in C#

1 Answer

0 votes
using System;
using System.Linq;
using System.Collections.Generic;

internal class Program
{
    public static int[] Merge(int[] arr1, int[] arr2) {
        ISet<int> mergedSet = new SortedSet<int>();

        foreach (int num in arr1) {
            mergedSet.Add(num);
        }
        foreach (int num in arr2) {
            mergedSet.Add(num);
        }

        int[] mergedArray = mergedSet.ToArray();

        return mergedArray;
    }

    public static void Main(string[] args)
    {
        int[] arr1 = new int[] { 1, 2, 2, 3, 7, 7, 7, 8, 9 };
        int[] arr2 = new int[] { 0, 0, 4, 4, 4, 5, 6, 7, 7, 8 };

        int[] mergedArray = Merge(arr1, arr2);

        Console.WriteLine(string.Join(", ", mergedArray));
    }
}



/*
run:

0, 1, 2, 3, 4, 5, 6, 7, 8, 9
     
*/

 



answered May 21, 2024 by avibootz

Related questions

2 answers 180 views
2 answers 132 views
1 answer 202 views
1 answer 147 views
1 answer 135 views
1 answer 185 views
1 answer 209 views
...