zoukankan      html  css  js  c++  java
  • Go

    // 二分查找

    func BinaryFind(arr *[6]int, lindex int, rindex int, target int) {

        // 当 lindex > rindex 时 是肯定找不到的
        if lindex > rindex {
            fmt.Println("找不到~~~")
            return 
        }
        // 获取中间位置的下标
        mindex := (lindex + rindex) / 2

        if (*arr)[mindex] < target {
            BinaryFind(arr, mindex + 1, rindex, target)
        }else if (*arr)[mindex] > target {
            BinaryFind(arr, lindex, mindex - 1, target)
        }else {
            fmt.Println("找到了,下标为=", mindex)
        }
    }
     
    // 二分查找(前提是 数组有序)
    binary_arr := [...]int{1,8,10,89,100,123}
    fmt.Println(binary_arr)
            
    BinaryFind(&binary_arr, 0, len(binary_arr)-1, 100)
     
     
     
     
  • 相关阅读:
    nodejs
    Linux 的常用命令
    vue入门学习1_事件及修饰符
    mongo笔记
    spring boot笔记
    CentOS 6 ElasticSearch 5.5.x 安装指南
    linux用户和用户组
    linux下配置安装
    linux命令
    elasticsearch
  • 原文地址:https://www.cnblogs.com/guo-s/p/14006651.html
Copyright © 2011-2022 走看看