zoukankan      html  css  js  c++  java
  • 中软面试 算法

    中软面试第二轮,被推到微软面试,这个题目:
        /* 输入:两个有序数组  
         * 输入:合并后的排序数组 
         */ 
    当时一片空白了。我写了一个,人家说效率低下,事后写的方法,以防忘记
     
            // 将小的值加到result,并将该数组下标+1,  
            // 如果相等,则将其任意一个加到result,两数组下标均+1  
            // 如果下标超出该数组长度,则退出循环  
     
    static List<int> MergeArray(int[] a,int[] b)
            {
                
    int idxa = 0;
                
    int idxb = 0;
                List
    <int> result = new List<int>();

                
    while(true)
                {
                    
    if(idxa >a.Length -1 || idxb > b.Length -1)
                    {
                        
    break;
                    }
                    
    if(a[idxa] < b[idxb])
                    {
                        result.Add(a[idxa]);
                        idxa
    ++;
                    }
                    
    else if(a[idxa] > b[idxb])
                    {
                        result.Add(b[idxb]);
                        idxb
    ++;
                    }
                    
    else
                    {
                        result.Add(a[idxa]);
                        idxa
    ++;
                        idxb
    ++;
                    }
                }

                
    if(idxa >= a.Length -1)
                {
                    
    for (int i = idxa; i < a.Length - 1; i++)
                    {
                        result.Add(a[i]);
                    }
                }
                
    if(idxb >= b.Length - 1)
                {
                    
    for (int i = idxb; i < b.Length; i++)
                    {
                        result.Add(b[i]);
                    }
                }

                
    return result;
            }
  • 相关阅读:
    背水一战 Windows 10 (26)
    背水一战 Windows 10 (25)
    背水一战 Windows 10 (24)
    背水一战 Windows 10 (23)
    背水一战 Windows 10 (22)
    背水一战 Windows 10 (21)
    背水一战 Windows 10 (20)
    背水一战 Windows 10 (19)
    背水一战 Windows 10 (18)
    背水一战 Windows 10 (17)
  • 原文地址:https://www.cnblogs.com/kakaliush/p/2059084.html
Copyright © 2011-2022 走看看