您的位置:首页 > 编程语言 > Go语言

Golang Leetcode 868. Binary Gap.go

2019-04-26 23:08 281 查看
版权声明:原创勿转 https://blog.csdn.net/anakinsun/article/details/89578355

思路

N不断的右移,同时判断是否等于1

code

func binaryGap(N int) int {
var d, max int

if N&(N-1) == 0 {
return 0
}

for ; N > 0; N >>= 1 { //N不断的右移
if N&1 == 1 { //判断是否等于1
if max == 0 {
max = 1
}
if d > max {
max = d
}
d = 0
}
if max > 0 {
d++
}
}
return max
}

更多内容请移步我的repo:https://github.com/anakin/golang-leetcode

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: