예제 #1
0
    public static bool isAnagram(char[] str1, char[] str2)
    {
        int size1 = str1.Length;
        int size2 = str2.Length;

        if (size1 != size2)
        {
            return(false);
        }

        CountMap <char> cm = new CountMap <char>();

        foreach (char ch in str1)
        {
            cm.add(ch);
        }

        foreach (char ch in str2)
        {
            if (cm.containsKey(ch))
            {
                cm.remove(ch);
            }
            else
            {
                return(false);
            }
        }

        return(cm.size() == 0);
    }
예제 #2
0
    public static void Main2(string[] args)
    {
        CountMap <int> cm = new CountMap <int>();

        cm.add(2);
        cm.add(2);
        cm.remove(2);
        Console.WriteLine("count is : " + cm.get(2));
        Console.WriteLine("count is : " + cm.get(3));
    }
예제 #3
0
    public static void printFirstRepeating(int[] arr)
    {
        int            i;
        int            size = arr.Length;
        CountMap <int> hs   = new CountMap <int>();

        for (i = 0; i < size; i++)
        {
            hs.add(arr[i]);
        }
        for (i = 0; i < size; i++)
        {
            hs.remove(arr[i]);
            if (hs.containsKey(arr[i]))
            {
                Console.WriteLine("First Repeating number is : " + arr[i]);
                return;
            }
        }
    }