做题记录
1.本题和第10题相似,也是使用了前缀和的概念;
2.特别巧妙的一个做法是,把其中的0换成-1,这样如果数组中包含的0和1的个数相同,那么其前缀和就是0;
3.使用的数据结构Map<Integer,Integer>
其中key代表的是前缀和
value代表的是该前缀和最靠前的索引
所以初始化的时候map.put(0,-1)
0前面的“索引”为-1
在索引相同的情况下,Math.max(max,当前索引-最靠前的索引)这样可以得到最长的数组长度
剑指 Offer II 011. 0 和 1 个数相同的子数组
最新推荐文章于 2023-05-12 17:40:02 发布