LeetCode简单题之哪种连续子字符串更长

news/2024/11/24 9:03:40/

题目

给你一个二进制字符串 s 。如果字符串中由 1 组成的 最长 连续子字符串 严格长于 由 0 组成的 最长 连续子字符串,返回 true ;否则,返回 false 。
例如,s = “110100010” 中,由 1 组成的最长连续子字符串的长度是 2 ,由 0 组成的最长连续子字符串的长度是 3 。
注意,如果字符串中不存在 0 ,此时认为由 0 组成的最长连续子字符串的长度是 0 。字符串中不存在 1 的情况也适用此规则。
示例 1:
输入:s = “1101”
输出:true
解释:
由 1 组成的最长连续子字符串的长度是 2:“1101”
由 0 组成的最长连续子字符串的长度是 1:“1101”
由 1 组成的子字符串更长,故返回 true 。
示例 2:
输入:s = “111000”
输出:false
解释:
由 1 组成的最长连续子字符串的长度是 3:“111000”
由 0 组成的最长连续子字符串的长度是 3:“111000”
由 1 组成的子字符串不比由 0 组成的子字符串长,故返回 false 。
示例 3:
输入:s = “110100010”
输出:false
解释:
由 1 组成的最长连续子字符串的长度是 2:“110100010”
由 0 组成的最长连续子字符串的长度是 3:“110100010”
由 1 组成的子字符串不比由 0 组成的子字符串长,故返回 false 。
提示:
1 <= s.length <= 100
s[i] 不是 ‘0’ 就是 ‘1’
来源:力扣(LeetCode)

解题思路

  这道题和最大连续1的个数差不多是同一类型的题,只需要多加一组变量用来记录遍历过程中1和0的最大连续信息即可。

class Solution:def checkZeroOnes(self, s: str) -> bool:oneMax,zeroMax=-float('inf'),-float('inf')one,zero=0,0for i in s:if i=='1':zero=0one+=1else:zero+=1one=0if zero>zeroMax:zeroMax=zeroif one>oneMax:oneMax=onereturn True if oneMax>zeroMax else False

在这里插入图片描述


http://www.ppmy.cn/news/605398.html

相关文章

LeetCode简单题之按奇偶性交换后的最大数字

题目 给你一个正整数 num 。你可以交换 num 中 奇偶性 相同的任意两位数字&#xff08;即&#xff0c;都是奇数或者偶数&#xff09;。 返回交换 任意 次之后 num 的 最大 可能值。 示例 1&#xff1a; 输入&#xff1a;num 1234 输出&#xff1a;3412 解释&#xff1a;交换数…

带你彻彻底底搞懂朴素贝叶斯公式

https://zhuanlan.zhihu.com/p/54287889 本文参考了该博客的实例&#xff0c;但该博客中的朴素贝叶斯公式计算错误&#xff0c;评论中的也不对&#xff0c;所以&#xff0c;重新写一篇。一. 朴素贝叶斯朴素贝叶斯中的朴素一词的来源就是假设各特征之间相互独立。这一假设使得朴…

微型导轨的使用寿命能达到多久?

微型导轨&#xff0c;顾名思义就是体积很小的导轨&#xff0c;一般是应用在小型化设备中的&#xff0c;像半导体设备&#xff0c;医疗设备&#xff0c;IC制造设备&#xff0c;X-Y table&#xff0c;精密测量及检测仪器&#xff0c;高速皮带驱动设备&#xff0c;高速移载设备等都…

LeetCode简单题之二进制间距

题目 给定一个正整数 n&#xff0c;找到并返回 n 的二进制表示中两个 相邻 1 之间的 最长距离 。如果不存在两个相邻的 1&#xff0c;返回 0 。 如果只有 0 将两个 1 分隔开&#xff08;可能不存在 0 &#xff09;&#xff0c;则认为这两个 1 彼此 相邻 。两个 1 之间的距离是…

SVD(奇异值分解)小结

特征值分解和奇异值分解的区别 所有的矩阵都可以进行奇异值分解&#xff0c;而只有方阵才可以进行特征值分解。当所给的矩阵是对称的方阵&#xff0c;A(T)A&#xff0c;二者的结果是相同的。也就是说对称矩阵的特征值分解是所有奇异值分解的一个特例。但是二者还是存在一些小的…

LeetCode中等题之随机数索引

题目 给定一个可能含有重复元素的整数数组&#xff0c;要求随机输出给定的数字的索引。 您可以假设给定的数字一定存在于数组中。 注意&#xff1a; 数组大小可能非常大。 使用太多额外空间的解决方案将不会通过测试。 示例: int[] nums new int[] {1,2,3,3,3}; Solution sol…

什么是梯度下降法?

20220114 yθx θ取一个初始值 x,y是样本对 θ θ -梯度 θ不断改变知道左右两边相差小于误差 梯度下降从来都是拟合负梯度&#xff0c;GBDT平方损失只是恰好等于残差 https://mp.weixin.qq.com/s/F4YHEpfa280cpR4tgL0Maw AI面试题之GBDT梯度提升树 张戎​数学 话题的优秀回…