码迷,mamicode.com
首页 > 其他好文 > 详细

golang获取一串数字中与给定数最接近的数字

时间:2015-09-12 12:21:05      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:

今天需要写一个算法,获取一串数字中与给定数最接近的数字,代码如下

package main

import (
    
    "fmt"
)

func main(){
    arr:=[]int{12,16,29,34,39,43,55,64,71,89,90,9}
    zuijin:=get_zuijin(40,arr)
    fmt.Println(zuijin)
}

func get_zuijin(this int,arr []int) int{
    min:=0 
    if this==arr[0]{
        return arr[0]
    }else if this>arr[0]{
        min = this-arr[0]
    }else if this<arr[0]{
        min = arr[0]-this
    }
    
    for _,v:=range arr{
        if v==this{
            return v    
        }else if v>this{
            if min>v-this{
                min = v-this    
            }
        }else if v<this{
            if min>this-v{
                min = this-v    
            }
        }
    }
    
    for _,v:=range arr{
        if this+min == v{
            return v    
        }else if this-min == v{
            return v    
        }    
    }
    return min
}



golang获取一串数字中与给定数最接近的数字

标签:

原文地址:http://my.oschina.net/tongjh/blog/505237

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!