求最长连续字母序列 - Go语言实现


//求最长连续字母序列

package main

import "fmt"

func main() {
	query := "acaccbabcccb"
	count := 0
	max := []int{0,0}
	index := 0

	for k,_ := range query {
		if k>0 && (query[k] - query[k-1])<=1{
			if count == 0 {
				index = k
			}

			count++
			if count > max[1] {
				max[0] = index //开始计数的数组下标
				max[1] = count //最大字母连续计数
			}

		}else{
			//重新开始计数
			count = 0
			index = 0
		}
	}

	fmt.Println("最长连续字母序列长度:", max[1]+1)
	fmt.Println("最长连续字母序列:", query[max[0]-1:max[0]+max[1]])
}


#笔试题目##golang工程师#
全部评论
go写算法好累
点赞 回复
分享
发布于 2020-02-17 21:47
没学过go,但是看着变量命名好难受😂
点赞 回复
分享
发布于 2020-02-17 21:55
阅文集团
校招火热招聘中
官网直投
哈哈,我没明白这题目的意思,连续字母序列的意思是aaa也是? (query[k] - query[k-1])<=1这行代码的话,是不是说明ca也是?
点赞 回复
分享
发布于 2020-02-17 23:37

相关推荐

1 收藏 评论
分享
牛客网
牛客企业服务