java binary

作者:原创时间:2022-03-24
文档

java binary是什么,让我们一起了解一下?

binary是以2为基数代表系统的二进位制,这一系统中,通常用两个不同的符号0(代表零)和1(代表一)来表示,现代的计算机和依赖计算机的设备里都使用二进制,每个数字称为一个比特(Bit,Binary digit的缩写)。

实际应用中,比如binary search(二分查找)和bubblesort(冒泡排序)一样,binary search是在一个有序排列的数组中查找指定数据的下标并输出,普通的查找方法通过遍历数组,找出对应数据。

但是针对数组长度较长或者非常长的情况下,这个从头遍历查找的方法效率就显得十分低下,这时候二分查找的优势就显现出来了。

二分查找,意味着从中间开始进行比较,因为数组是有序排列的(一般从小到大);所以就可以从数组的中间比较。

下面通过代码实现:

class BinarySearch{
public static void main(String[] args){
//创建一个有序数组
int[] arr1={1,2,3,4,5,6,7};
//调用binarySearch方法,传入参数  arr1,6
binarySearch(arr1,6);
        }
        static void binarySearch(int[] arr,int a){
        //定义数组的起点下标和终点下标
             int min=0,max=arr.length-1;
             /**
              *定义数组的中间数据的下标,接收的类型为int 
              *所以当数据长度为偶数时不影响实际循环
              */
             int centre=(min+max)/2;
             //使用while循环,不知道具体的循环次数所以for循环不适用
             while(min<=max){
             //第一种,在中间的数字就是需要查找的数,直接跳出循环
if(arr[centre]==a){
        System.out.println(centre);
        break;
    //当中间的数大于查找数,将中间数据的下标减1 赋给 最大下标
    }if(arr[centre]>a){
        max=centre-1;
    //当中间的数小于查找数,将中间数据的下标加1 赋给 最小下标
    }else{
         min=centre+1;
    }
    //完成新的赋值之后,再将完成新的赋值的下标的平均值赋值给中间下标
                centre=(min+max)/2;
             }
       }
}

以上就是小编今天的分享了,希望可以帮助到大家。

显示全文
java binder win10c盘满了怎么清理 java binlog 如何清理win10电脑c盘 java bit java blob java break wps怎么求和 java bufferedimage java bufferedoutputstream java build.gradle java bundle java bytebuffer java byte取值范围 java calculate 苹果13怎么开机 java calendar获取当前时间 java callback java ceiling 平板如何录屏 excel表格怎么合并单元格 java bigdecimal java benchmark java beanutils 手机充电发热发烫是什么原因 手机充电时可以玩手机吗 java bean java base64decoder java base64 java barrier java bacnet win10专业版和企业版的区别 java async java assembly java aspose java aspectj java asmx java ascii java arrays.sort java args