A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© continuer 中级黑马   /  2015-12-24 18:28  /  3532 人查看  /  21 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class Demo{    public static void main(String[] args){
         int[] arr ={11,22,33,44,55,66};                                          //二分查找的前提是,数组必须是有序的。
         int index = getIndex(arr,33);                                           //定义一个整数,接收返回来的值
         System.out.println(index);                                              //打印返回来的值
    }
   public static int getIndex(int[] arr,int vule){
      int min = 0;                                                                      //定义最小值
      int max = arr.length - 1;                                                  //定义最大值
      int mid = (min + max) / 2;                                              //定义中间值
       while(arr[mid] != vule){                                                 //判断传入的值是否等于中间值,如果不等于,往下执行
           if(arr[mid] > vule){                                                    //判断传入的值是否小于中间值
                max = mid -1;                                                      //如果小于,则最大值为中间值的前面一位
            }else if(arr[mid] < vule){                                          //如果大于中间值
                min = mid +1;                                                    //最小值则改为中间值的后面一位
            }
             mid  = (min + max) / 2;                                         
             if(min > max){                                                       //如果最小值大于最大值                  
                   return -1;                                                        //返回-1
              }
        }
         return mid;                                                             //如果传入的值等于中间值返回中间值
   }
}




i'msosorryican'tstaywithyouTodayPleaselookafteryourselfreplaceofmimisyousomuch!

21 个回复

倒序浏览
加油,我都忘了,
回复 使用道具 举报
恩 这个面试很容易考,最好能手写出来
回复 使用道具 举报
感觉好绕啊,想一下还是可以的
回复 使用道具 举报
个人感觉只要思想熟悉,到中后期代码的实现都不是什么很难得事
回复 使用道具 举报
基础性的题。面试有数组结合递归的全排列题  小心了
回复 使用道具 举报
DayBreak 发表于 2015-12-24 21:46
基础性的题。面试有数组结合递归的全排列题  小心了

我就遇到了
回复 使用道具 举报
anuo 发表于 2015-12-24 21:28
个人感觉只要思想熟悉,到中后期代码的实现都不是什么很难得事

恩  是的,但是现在还是基础,有些东西还是要记牢的
回复 使用道具 举报
Zrz_K 中级黑马 2015-12-25 23:10:30
9#
现在写起来还有点手生,得加强
回复 使用道具 举报
Zrz_K 发表于 2015-12-25 23:10
现在写起来还有点手生,得加强

恩  多写几遍
回复 使用道具 举报
499087476 来自手机 中级黑马 2015-12-25 23:38:36
11#
很棒,帮我复习了一边。。共勉。
回复 使用道具 举报

嘿嘿,其实理清楚思路了很简单的。怎么样,应该写出来了吧!
回复 使用道具 举报
499087476 发表于 2015-12-25 23:38
很棒,帮我复习了一边。。共勉。

一起学习
回复 使用道具 举报
Hi.。 中级黑马 2015-12-27 16:57:47
14#
嗯!赶紧来练练,明天就要面试了。不过,想念是miss。好像打错了。同一个单词,既是想念又是错过。哈哈~
楼主加油!
回复 使用道具 举报
Hi.。 中级黑马 2015-12-27 17:04:48
15#
还有写完发现楼主 value 也写错了。虽然一点也都不影响。但多注意下总是好的
回复 使用道具 举报
Hi.。 发表于 2015-12-27 17:04
还有写完发现楼主 value 也写错了。虽然一点也都不影响。但多注意下总是好的 ...

谢谢提醒哦,是写错了,我已经把它刚写了100遍,100遍
回复 使用道具 举报
手写好难啊
回复 使用道具 举报

先分析清楚思路,在写代码就简单多了,这个面试题考的比较多,最好能手写出来,还有冒泡和选择都是面试考的很多的
回复 使用道具 举报
Hi.。 发表于 2015-12-27 16:57
嗯!赶紧来练练,明天就要面试了。不过,想念是miss。好像打错了。同一个单词,既是想念又是错过。哈哈~
楼 ...

嗯嗯 加油
回复 使用道具 举报
复习了, 学的越多前面的基础都要淡忘了
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马