• 数组查找


    元素的查找:元素无序,循环遍历;元素有序,二分查找 - 时间复杂度O(logn),空间复杂度o(1)

     1 class ArraySearch{
     2     public static void main(String[] args){
     3         /*//1.定义数组,无序
     4         int[] arr={1,6,3,8,4};
     5 
     6         //要查找的数
     7         int num=3;
     8 
     9         //for循环实现
    10         /*for(int i=0;i<arr.length;i++){
    11             //判断
    12             if(arr[i]==num){
    13                 System.out.println(i);
    14                 break;
    15             }
    16         }*/
    17 
    18         /*//增强for循环
    19         int count=0;
    20         for(int i:arr){
    21             if(i==num){
    22                 System.out.println(count);
    23                 break;
    24             }
    25 
    26             count++;
    27         }*/
    28 
    29 
    30 
    31 
    32         //2.有序数组的查找
    33         //定义有序数组
    34         int[] arr={1,2,3,5,7,9};
    35 
    36         //最小下标,最大数的下标,中间下标
    37         int min=0;
    38         int max=arr.length-1;
    39         int mid=(min+max)/2;
    40 
    41         //查找数
    42         int num=9;
    43 
    44         //
    45         boolean flag=true;
    46 
    47         //
    48         while(arr[mid]!=num){
    49             //大于num
    50             if(arr[mid]>num){
    51                 max=mid-1;
    52             }
    53 
    54             //小于num
    55             if(arr[mid]<num){
    56                 min=mid+1;
    57             }
    58 
    59             //判断临界
    60             if(min>max){
    61                 System.out.println("数据有误");
    62                 flag=false;
    63                 break;
    64             }
    65             //重新计算中间值
    66             mid=(max+min)/2;
    67         }
    68 
    69         //输出下标
    70         if(flag)
    71         System.out.println(mid);
    72     }
    73 }
  • 相关阅读:
    Python【第三方模块&标准模块】
    Python【读写Json文件】
    python【内置函数&自定义函数】
    python【文件操作:读写文件】
    python【数据类型:列表与元组】
    QTP自传之录制
    测试工作杂谈
    心魔
    QTP自传之初识
    ActionScript学习笔记(七)——缓动和弹性运动
  • 原文地址:https://www.cnblogs.com/nanlinghan/p/9614077.html
Copyright © 2020-2023  润新知