zoukankan      html  css  js  c++  java
  • 查找

    获取某元素第一次出现的地方

    1 public static int getIndex(int[] arrm,int key) {
    2                 for(int x=0;x<arrm.length;x++) {
    3                     if(arrm[x]==key)
    4                         return x;
    5                 }
    6                 return -1;//return -1:首先,要的一个角标,而返回-1,角标没有负数
    7                 
    8             }

    二分查找:

    前提:数组必须按顺序排序

     1 public static int HalfSearch(int []arrs,int key) {
     2                 int min,max,mid;
     3                 min=0;
     4                 max=arrs.length-1;
     5                 mid=(max+min)/2;
     6                 while(arrs[mid]!=key) {
     7                     if(arrs[mid]<key)
     8                         min=mid+1;
     9                     else if(arrs[mid]>key)
    10                         max=mid-1;
    11                     if(max<min)
    12                         return -1;//此时说明 表中没有key次数据
    13                     mid=(max+min)/2;
    14                         
    15                 }
    16                 return mid;
    17             }

    给定一个有序的数组,如果往该数组中存储一个元素,并保证这个数组还是有序的

    那么这个元素的存储的角标为如何获取(折半查找法)

     1 public static int HalfSearch_1(int []arrs,int key) {
     2                 int min,max,mid;
     3                 min=0;
     4                 max=arrs.length-1;
     5                 mid=(max+min)/2;
     6                 while(arrs[mid]!=key) {
     7                     if(arrs[mid]<key)
     8                         min=mid+1;
     9                     else if(arrs[mid]>key)
    10                         max=mid-1;
    11                     if(max<min)
    12                         return min;//当数组中没有该数时,最终max=min-1;
    13                     mid=(max+min)/2;
    14                         
    15                 }
    16                 return mid;
    17             }

    java已给代码:

    Int index=Arrays.binarySearch(arr,45);

    //返回正数就是数组中有该数,且返回位置,返回负数表示,该数应该排在返回{(负数的绝对值)-1 }的位置

  • 相关阅读:
    form表单
    JsonResponse对象
    HttpRequest对象
    Django基础
    ssh私钥登录
    监控window目录是否为空自定义item
    redis频繁报错Cannot allocate memory
    脱敏html文件文件
    MySQL删除数据
    ftp服务器搭建
  • 原文地址:https://www.cnblogs.com/fmust/p/12378567.html
Copyright © 2011-2022 走看看