首页 > 其他 > 详细

使用二叉树查找指定数字的下标

时间:2020-09-17 15:17:17      阅读:90      评论:0      收藏:0      [点我收藏+]
 /**
     * 使用二叉树查找指定数字的下标
     * @param findNum 被查找的数
     * @param nums     原数组
     * @return        成功返回指定下标,失败返回-1
     */
    public static int findByNumsIndex(int findNum, int[] nums) {
        Arrays.sort(nums);
        int left=0,right=nums.length-1,mid;
        while(left<=right){
            mid=left+(right-left)/2;//获取中间位置
            if(nums[mid]==findNum){
                return mid;
            }else if(findNum<nums[mid]){//根据中间数判断 如果被查询的数小于当前中间数下标位置的值,则在前半区找
                right=mid-1;
            }else{//如果被查询的数大于当前中间数下标位置的值,则在后半区找       [|||||\|||||]
                left=mid+1;
            }
        }
        return -1;
    }

 

使用二叉树查找指定数字的下标

原文:https://www.cnblogs.com/zc-chuang/p/13685268.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!