请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

寻找不含重复字符子串长度的算法 疑问

lastoccurred 只是被定义赋值了一个map[byte]int类型的空map,为什么在for range中 lastoccurred[ch] 就直接可以和 start 比较大小了?图片描述

正在回答

1回答

是这样的,Go语言中未赋值的变量都会初始化为“0”值。根据这样的思路,lastOccurred[ch]也能够确保一定会给出值,不管ch在不在这个map里,显然如果不在的话,lastOccurred[ch]就是0

我们可以通过val, ok := lastOccurred[ch]来判断,如果ch不在map里,ok就会是false

2 回复 有任何疑惑可以回复我~
  • lastOccurred 是空map 啊,里面的 key和value并没有啊, s 这个字符串内的byte 和没有key和value的map  lastOccurred 怎么寻找对比啊?
    回复 有任何疑惑可以回复我~ 2019-06-27 00:00:27
  • astOccurred 是空map 啊,里面的 key和value并没有啊, s 这个字符串内的byte 和没有key和value的map lastOccurred 怎么寻找对比啊?
    回复 有任何疑惑可以回复我~ 2019-06-27 18:33:51
  • bbmouse 回复 提问者 qq_学海无涯苦作舟_1 #3
    老师后面已经加上ok的判断了,如果没有是不参与后面的比较的
    回复 有任何疑惑可以回复我~ 2019-06-28 22:25:54
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信