您的位置:首页 > 其它

去掉数组中重复无素

2016-11-09 16:28 176 查看
public static string[] DifferentElements(string[] array)

        {

            //0.输入合法性校验

            if (array == null || array.Length == 0)

            {

                return new string[] { };

            }

            //1.临时数组:与原数组元素一样

            string[] tempArray = new string[array.Length];

            for (int i = 0; i < tempArray.Length; i++)

            {

                tempArray[i] = array[i];

            }

            //清空原来的数组

            for (int i = 0; i < array.Length; i++)

            {

                array[i] = null;

            }

            //设置索引位置

            int index = 0;

 

            //用数组副本填装原来的数组

            for (int i = 0; i < tempArray.Length; i++, index++)

            {

                array[index] = tempArray[i];

                //与之前的元素比校,如果存在,索引位置倒退1

                for (int j = 0; j < index; j++)

                {

                    if (array[index] == array[j])

                    {

                        array[index] = null;

                        index--;

                        break;

                    }

                }

              

            }

            //有空元素,去掉空元素

            int n = 0;//算长度

            for (int m = 0; m < array.Length; m++)

            {

                if (array[m] == null)

                {

                    ;

                }

                else

                {

                    n++;

                }

            }

            //赋值给新数组

            string[] newarrary = new string
;

            for (int q = 0; q < n; q++)

            {

                newarrary[q] = array[q];

            }

            //5.返回结果集

            return newarrary;

        }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: