博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
截半查找
阅读量:5076 次
发布时间:2019-06-12

本文共 604 字,大约阅读时间需要 2 分钟。

截半查找,跟顺序查找相似,但其效率更高,特别是数量越多的情况下,其基本形式为:

                 查找:

              int[] a = new int[8] { 4, 13, 22, 34, 41, 52, 64, 70 };

                输入要找的数:

              int find = Convert.ToInt32(Console.ReadLine());

                设定下标:

              int kaiShi = 0, jieShu = a.Length - 1, zhongJian;
              for (int i=0;i<7 ;i++ )
   {

                截半查找:

            zhongJian = (kaiShi + jieShu) / 2;
            if (a[zhongJian] == find)
        {
            Console.WriteLine("找到啦!是第{0}个数", a[i]);
            break;
        }

                如果没找到,在需要的一半数组中查找,每次排除一半,直到全部找完:

            else
     {
             if (a[zhongJian] < find)
         {
             kaiShi = zhongJian + 1;
         }
              else
         {
              jieShu = zhongJian - 1;
         }
                if (kaiShi > jieShu)
           {

                最后输出:

               Console.WriteLine("没找到");
               break;
           }
       }
   }

转载于:https://www.cnblogs.com/m-m-g-y0416/p/5414657.html

你可能感兴趣的文章
[GraphQL] Reuse Query Fields with GraphQL Fragments
查看>>
Illustrated C#学习笔记(一)
查看>>
理解oracle中连接和会话
查看>>
两种最常用的Sticky footer布局方式
查看>>
Scrapy实战篇(三)之爬取豆瓣电影短评
查看>>
HDU 5510 Bazinga KMP
查看>>
[13年迁移]Firefox下margin-top问题
查看>>
Zookeeper常用命令 (转)
查看>>
Java程序IP v6与IP v4的设置
查看>>
RUP(Rational Unified Process),统一软件开发过程
查看>>
数据库链路创建方法
查看>>
Enterprise Library - Data Access Application Block 6.0.1304
查看>>
重构代码 —— 函数即变量(Replace temp with Query)
查看>>
Bootstrap栅格学习
查看>>
程序员的数学
查看>>
聚合与组合
查看>>
jQuery如何获得select选中的值?input单选radio选中的值
查看>>
设计模式 之 享元模式
查看>>
如何理解汉诺塔
查看>>
洛谷 P2089 烤鸡【DFS递归/10重枚举】
查看>>