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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑色幽默K 中级黑马   /  2015-3-23 22:20  /  842 人查看  /  19 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

获取最值,选择排序,冒泡排序,交换位置,反转,普通查找,折半查找,插入一个数字,返回角标位置。
真的很头大啊!!
特别是在排序和查找这一块而!很头晕,还很头大!
public static int halfSearch_2(int[] arr, int key)
        {
                int min=0, max=arr.length-1, mid;
                while(min<=max)
                {
                        mid=(max+min)/2;
                        if(key>arr[mid])
                                min=mid+1;
                        else if(key<arr[mid])
                                max=mid-1;
                        else
                                return mid;
                       
                       
                }
                return min;
               
        }
最后返回的min,有谁能一瞬间想到为什么?
我是不能了,我得推导一番,才可以!!

19 个回复

倒序浏览
慢慢推到别着急,相信楼主好样的(-。-;)
回复 使用道具 举报
加油加油哦~~:handshake
回复 使用道具 举报
a1301155262 来自手机 中级黑马 2015-3-23 23:59:47
板凳
楼主好样的
回复 使用道具 举报
看了一遍这个知识点,个人感觉还是不太理解,还得多练习。加油
回复 使用道具 举报
每次遇到这样的题,我总是先去在纸上画以下,返回什么,怎么进行就会很明显了,个人观点
回复 使用道具 举报
获取一个数在该数组中插入的位置
回复 使用道具 举报
四季 中级黑马 2015-3-25 18:44:55
8#
加油吧。。这个死记根本没用。。头都要晕死。。。
回复 使用道具 举报
加油加油   支持!!!!!
回复 使用道具 举报
加油吧,这个理解了就好了,就是思维题嘛~:loveliness:
回复 使用道具 举报
加油!!
回复 使用道具 举报
呵呵,这个是折半查找,慢慢来,你就会理解的,主要是要知道执行的过程中,指针的位置在哪里?这样你自然就能推出是min了……
回复 使用道具 举报
楼主厉害
回复 使用道具 举报
绝望 来自手机 中级黑马 2015-3-25 22:32:50
14#
折半查找,只要理解了算法,代码就算忘了也能写出来
回复 使用道具 举报
见多识广吧
回复 使用道具 举报
{:2_31:}{:2_31:}{:2_31:}{:2_31:}{:2_31:}{:2_31:}
回复 使用道具 举报
奋斗吧亲,  希望就在前方
回复 使用道具 举报
加油吧,这个理解了就好了,就是思维题嘛~
回复 使用道具 举报
你们的代码怎么都是这种风格?一句话的语句都用简写形式……
回复 使用道具 举报
加油。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马