zoukankan      html  css  js  c++  java
  • [转载]:合并两个已排序好的int数组,并排序返回c#实现

    /// <summary>
            /// 两个从小到大排序好的int数组,合并后也返回一个从小到大排序好的数组,
            /// 包含两个数组中全部的元素
            /// </summary>
            /// <param name="a"></param>
            /// <param name="b"></param>
            /// <returns></returns>
            public static int[] MergeArray(int[] a, int[] b)
            {
                if( a == null || b== null )
                    throw new NotSupportedException();

                int lena = a.Length;
                int lenb = b.Length;
                int[] c = new int[lena+lenb];

                int i, j, n;
                i = j = n = 0;

                while (i < lena && j < lenb)
                {
                    if (a[i] < b[j])
                    {
                        c[n++] = a[i++];
                    }
                    else if (a[i] > b[j])
                    {
                        c[n++] = b[j++];
                     }
                    else
                    {
                        c[n++] = a[i++];
                        c[n++] = b[j++];                   
                    }
                }

                if (i == lena)
                {
                    while (j < lenb)
                        c[n++] = b[j++];
                }
                else
                {
                    while (i < lena)
                        c[n++] = a[i++];
                }

                return c;
            }

     
    做个快乐的自己。
  • 相关阅读:
    第二阶段冲刺第五天
    《需求过程——软件建模与分析》读书笔记四
    《需求工程——软件建模与分析》读书笔记三
    《需求工程——软件建模与分析》读书笔记二
    《需求工程——软件需求分析》读书笔记一
    《我们应当怎样做需求分析》阅读笔记
    个人总结
    软件工程概论第十六周学习进度
    第二阶段冲刺第十天
    第二阶段冲刺第九天
  • 原文地址:https://www.cnblogs.com/Jessy/p/2114231.html
Copyright © 2011-2022 走看看