zoukankan      html  css  js  c++  java
  • JAVA查找--[二分查找]

     1 package com.array;
     2 
     3 public class BinaryFind {
     4     /*
     5      * 项目名称:二分查找 ;
     6      * 项目要求:用JAVA对数组进行查找,并运用快速查找算法;
     7      * 作者:Sevck;
     8      */
     9     public void find(int leftIndex, int rightIndex, int val, int arr[]) {
    10         // 首先找到中间的数
    11         int midIndex = (leftIndex + rightIndex) / 2;
    12         int midval = arr[midIndex];
    13         // 如果要找的数比midval大
    14         if (rightIndex >= leftIndex) {
    15             if (midval > val) {
    16                 // 在arr左边数中找
    17                 find(leftIndex, midIndex - 1, val, arr);
    18             } else if (midval < val) {
    19                 // 在arr右边数中找
    20                 find(midIndex + 1, rightIndex, val, arr);
    21             } else if (midval == val) {
    22                 System.out.println("找到下标" + midIndex);
    23             }
    24         }
    25     }
    26 
    27     public static void main(String[] args) {
    28         int arr[] = { 2, 5, 7, 12, 55 };
    29         BinaryFind bf = new BinaryFind();
    30         bf.find(0, arr.length - 1, 12, arr);
    31     }
    32 }
  • 相关阅读:
    CodeForces
    CodeForces
    CodeForces 718C && HDU 3572 && Constellation
    CodeForces
    USACO 5.4 tour的dp解法
    10.22~10.28一周经典题目整理(meeting,BZOJ4377,POJ3659)
    codeforces 724D
    codeforces 724C
    hdu5909 Tree Cutting
    hdu5822 color
  • 原文地址:https://www.cnblogs.com/sevck/p/4498673.html
Copyright © 2011-2022 走看看