zoukankan      html  css  js  c++  java
  • 算法基础系列之五:数组排序类

    有一段时间没有更新博客了,这段时间比较郁闷。没什么新东西,把前几天面试的一道算法题写一下。应该是很简单的,只是很久没理算法这种东西了。
    [题目]:存在两个数组a[n]b[m]n>=m>0。需要取出数组a中最小的元素放入b[0],次小的放入b[1],依此类推,不能修改数组a,不能使用新数组。不排除数组a中的元素的值存在相等的可能性。
    [程序]

    static void Main(string[] args)
    {
        
    int[] a = new int[102242502639 };
        
    int[] b = new int[8];
        
    //
        int x1 = int.MaxValue;
        
    int x2 = -1;
        
    bool flag = false;
        
    for (int i = 0; i < b.Length; i++)
        
    {
            
    for (int j = 0; j < a.Length; j++)
            
    {
                
    for (int l = 0; l < i; l++)
                
    {
                    
    if (b[l] == j)
                    
    {
                        flag 
    = true;
                        
    break;
                    }

                }

                
    if (!flag && a[j] <= x1)
                
    {
                    x1 
    = a[j];
                    x2 
    = j;
                }

                flag 
    = false;
            }

            x1 
    = int.MaxValue;
            b[i] 
    = x2;
        }

        
    //
        for (int i = 0; i < b.Length; i++)
        
    {
            b[i] 
    = a[b[i]];
        }

        
    //
        for (int i = 0; i < b.Length; i++)
        
    {
            Console.WriteLine(b[i]);
        }

        Console.Read();
    }
  • 相关阅读:
    将make的输出重定向到文件
    ubuntu mount u盘以及cp拷贝文件夹
    Emacs Tutorial摘录
    c#实现每隔一段时间执行代码(多线程)
    socket.BeginReceiveFrom异步接收信息时,回调函数无法正常进入
    23个C#实用技巧
    C#中实现Form的透明属性变化即渐隐效果
    C#键位定制:设置一个文本框只能输入数字键
    byte 与 bit 的转换
    C# Socket UDP 案例 2
  • 原文地址:https://www.cnblogs.com/morvenhuang/p/1231752.html
Copyright © 2011-2022 走看看