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();
    }
  • 相关阅读:
    SOD开源框架MSF(消息服务框架)介绍
    c#中foreach的一种用法
    MSSql异常处理框架
    什么是架构?有几人说的清楚
    MSSql动态行转列
    WebForm版demo,模拟手机Usb接口充电
    规范化流程不能窥探的咪咪
    我对领导者的定义
    以乞丐为最大的贵客
    程序猿,是如何逆袭的
  • 原文地址:https://www.cnblogs.com/morvenhuang/p/1231752.html
Copyright © 2011-2022 走看看