How do I remove duplicates from a C# array?

后端 未结 27 2147
北海茫月
北海茫月 2020-11-22 07:53

I have been working with a string[] array in C# that gets returned from a function call. I could possibly cast to a Generic collection, but I was w

27条回答
  •  隐瞒了意图╮
    2020-11-22 08:46

    public static int RemoveDuplicates(ref int[] array)
    {
        int size = array.Length;
    
        // if 0 or 1, return 0 or 1:
        if (size  < 2) {
            return size;
        }
    
        int current = 0;
        for (int candidate = 1; candidate < size; ++candidate) {
            if (array[current] != array[candidate]) {
                array[++current] = array[candidate];
            }
        }
    
        // index to count conversion:
        return ++current;
    }
    

提交回复
热议问题