zoukankan      html  css  js  c++  java
  • C# 二分法查找和排序

    using System;
    using System.Collections.Generic;
    using System.Text;

    namespace AAA
    {
        public class Dichotomy
        {
            public static void DichotomySort(int[] array)
            {
                for (int i = 0; i < array.Length; i++)
                {
                    int start = 0;

                    int end = i - 1;

                    int middle = 0;

                    int temp = array[i];

                    while (start <= end)
                    {
                        middle = (start + end) / 2;

                        if (array[middle] > temp)//要排序元素在已经排过序的数组左边
                        {
                            end = middle - 1;
                        }
                        else
                        {
                            start = middle + 1;
                        }
                    }
                    for (int j = i - 1; j > end; j--)//找到了要插入的位置,然后将这个位置以后的所有元素向后移动
                    {
                        array[j + 1] = array[j];
                    }

                    array[end + 1] = temp;

                }
            }

            public static long DichotomySearch(long[] array, long key, long high, long low)
            {
                long middle = 0;

                if (high < low)
                {
                    return -1;
                }

                middle = (low + high) / 2;

                if (array[middle] == key)
                {
                    return middle;
                }
                else if (array[middle] > key)
                {
                    return DichotomySearch(array, key, middle - 1, low);
                }
                else
                {
                    return DichotomySearch(array, key,high, middle + 1);
                }
            }
        }
    }

    代码改变世界
  • 相关阅读:
    1008 Elevator (20)(20 分)
    1007 Maximum Subsequence Sum (25)(25 分)
    1006 Sign In and Sign Out (25)(25 分)
    酒店前台管理系统主要代码截图
    酒店前台管理系统
    酒店前台管理系统需求分析
    session与cookie的区别和联系
    ldap的实现单点登录
    git如何使用
    javaweb项目中的web.xml
  • 原文地址:https://www.cnblogs.com/oreobyzf/p/5897929.html
Copyright © 2011-2022 走看看