696. 计数二进制子串 给定一个字符串 s,计算具有相同数量0和1的非空(连续)子字符串的数量,并且这些子字符串中的所有0和所有1都是组合在一起的. 重复出现的子串要计算它们出现的次数. 示例 1 : 输入: "00110011" 输出: 6 解释: 有6个子串具有相同数量的连续1和0:"0011","01","1100","10","0011" 和 "01". 请…
1. 具体题目 给定一个字符串 s,计算具有相同数量0和1的非空(连续)子字符串的数量,并且这些子字符串中的所有0和所有1都是组合在一起的.重复出现的子串要计算它们出现的次数. 示例 1 : 输入: "00110011" 输出: 6 解释: 有6个子串具有相同数量的连续1和0:“0011”,“01”,“1100”,“10”,“0011” 和 “01”. 请注意,一些重复出现的子串要计算它们出现的次数.另外,“00110011”不是有效的子串,因为所有的0(和1)没有组合在一起. 示例…
给定一个二进制字符串 S(一个仅由若干 '0' 和 '1' 构成的字符串)和一个正整数 N,如果对于从 1 到 N 的每个整数 X,其二进制表示都是 S 的子串,就返回 true,否则返回 false. 示例 1: 输入:S = "0110", N = 3 输出:true 示例 2: 输入:S = "0110", N = 4 输出:false 提示: 1 <= S.length <= 1000 1 <= N <= 10^9 Java版 cla…
输入:6 输出:1 解释: 6 的二进制是 0b110 . 示例 4: 输入:8 输出:0 解释: 8 的二进制是 0b1000 . 在 8 的二进制表示中没有连续的 1,所以返回 0 . 提示: 1 <= N <= 10^9 做法比较简单,将数字右移,逐位判断当前位置的二进制值并记录最大的间距. 可以设初值为-1来判断是否最开始是否进入计数 代码如下: class Solution { public int binaryGap(int N) { int max = 0; int len =…
给定两个二进制字符串,返回他们的和(用二进制表示). 输入为非空字符串且只包含数字 1 和 0. 示例 1: 输入: a = "11", b = "1" 输出: "100" 示例 2: 输入: a = "1010", b = "1011" 输出: "10101" 思路比较清晰,模拟汇编中二进制加法的做法,对缺位补0后,然后依次相加两数和CF进位标志位. 最后结束时,判断CF是否为1,为1…
Give a string s, count the number of non-empty (contiguous) substrings that have the same number of 0's and 1's, and all the 0's and all the 1's in these substrings are grouped consecutively. Substrings that occur multiple times are counted the numbe…
题目 [题目传送门] 给定一个二进制数组, 计算其中最大连续1的个数. 示例 1: 输入: [1,1,0,1,1,1] 输出: 3 解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3. 注意: 输入的数组只包含 0 和1. 输入数组的长度是正整数,且不超过 10,000. 来源:力扣(LeetCode) 解题 简单题我重拳出击:> 分析 题目给出了二进制数组,不是0就是1 题目中有连续要求所以对于对于1则是叠加次数,遇上0则是要求需要进行重置当前的计数,二最后返回是要求最大的连…
题目 传送门 文本 给定一个二进制矩阵 A,我们想先水平翻转图像,然后反转图像并返回结果. 水平翻转图片就是将图片的每一行都进行翻转,即逆序.例如,水平翻转 [1, 1, 0] 的结果是 [0, 1, 1]. 反转图片的意思是图片中的 0 全部被 1 替换, 1 全部被 0 替换.例如,反转 [0, 1, 1] 的结果是 [1, 0, 0]. 示例 1: 输入: [[1,1,0],[1,0,1],[0,0,0]] 输出: [[1,0,0],[0,1,0],[1,1,1]] 解释: 首先翻转每一行…
题目: 力扣原题链接:https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/ 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3.示例 2: 输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是…
题目 传送门 在MATLAB中,有一个非常有用的函数 reshape,它可以将一个矩阵重塑为另一个大小不同的新矩阵,但保留其原始数据. 给出一个由二维数组表示的矩阵,以及两个正整数r和c,分别表示想要的重构的矩阵的行数和列数. 重构后的矩阵需要将原始矩阵的所有元素以相同的行遍历顺序填充. 如果具有给定参数的reshape操作是可行且合理的,则输出新的重塑矩阵:否则,输出原始矩阵. 示例 1: 输入: nums = [[1,2], [3,4]] r = 1, c = 4 输出: [[1,2,3,4…