找到 10786 篇文章 关于 Python

检查 Python 字符串的两半是否至少有一个不同的字符

Arnab Chakraborty
更新于 2020-12-30 13:32:21

125 次浏览

假设我们有一个小写字符串;我们必须检查是否可以从中间分割字符串,这将给出两半,这两半之间至少有一个字符的差异。它可能包含不同的字符或每个字符的不同频率。如果字符串长度为奇数,则忽略中间元素并检查其余元素。因此,如果输入类似于 s = "helloohekk",则输出将为 True,因为 "helloohekk" 的左半部分是 "hello",右半部分是 "ohekk",左右部分不同。为了解决这个问题,我们将遵循以下步骤 - left_freq := 字符串左半部分的字符频率计数… 阅读更多

检查 Python 中任何子集的按位与运算结果是否为 2 的幂

Arnab Chakraborty
更新于 2020-12-30 13:31:15

286 次浏览

假设我们有一个名为 nums 的数字数组。我们必须检查是否存在任何 nums 的子集,其按位与运算结果是 2 的幂。因此,如果输入类似于 nums = [22, 25, 9],则输出为 True,因为子集 {22, 9} 的二进制形式是 {10110, 1001},这两个数的与运算结果是 10000 = 16,它是 2 的幂。为了解决这个问题,我们将遵循以下步骤 - MAX := 32,假设最多有 32 位数字定义一个函数 solve()。这将采用 nums如果 nums 的大小… 阅读更多

检查 Python 中数字的位数是否按递增顺序具有连续设置位的计数

Arnab Chakraborty
更新于 2020-12-30 13:29:25

295 次浏览

假设我们有一个正数 n,我们必须检查给定数字 n 的位模式中连续 1 的计数是否从左到右递增。因此,如果输入类似于 n = 1775,则输出为 True,因为 n 的二进制表示形式为 11011101111,所以连续 1 的数量是 [2, 3, 4],它们是递增的。为了解决这个问题,我们将遵循以下步骤 - bits_pattern := n 的位的新列表bit_count := bits_pattern 的大小p_cnt := 0, c_cnt := 0i := 0当 i < bit_count 时,执行以下操作:如果 bits_pattern[i]… 阅读更多

检查 Python 中两个数字的 L 到 R 范围内的位是否互为补码

Arnab Chakraborty
更新于 2020-12-30 13:27:49

110 次浏览

假设我们有两个数字 x 和 y 以及一个给定的范围 (left, right)。我们必须检查给定两个数字在 left 到 right 范围内的所有位是否互为补码。我们必须记住从右到左,所以最低有效位被认为是在第一位。因此,如果输入类似于 x = 41 y = 54 left = 2 right = 5,则输出为 True,因为 41 和 54 的二进制表示形式为 101001 和 110110。2 到 5 范围内的位… 阅读更多

使用 Python 中的 DFA 检查二进制字符串是否为 3 的倍数

Arnab Chakraborty
更新于 2020-12-30 13:26:28

1K+ 次浏览

假设我们有一个数组 n,它表示任何数字的二进制表示形式。我们必须使用确定性有限自动机 DFA 来检查其二进制表示形式是否可被三整除。因此,如果输入类似于 n = [1, 1, 0, 0](12 的二进制形式),则输出为 True。为了解决这个问题,我们可以构建如下所示的 DFA - 当一个数字可被 3 整除时,余数将为 0,否则余数将为 1 或 2。这三个余数有三个状态。初始状态是… 阅读更多

检查 Python 中数字的二进制表示是否为回文

Arnab Chakraborty
更新于 2020-12-30 13:22:22

255 次浏览

假设我们有一个数字 n。我们必须检查 n 的二进制表示是否为回文。因此,如果输入类似于 n = 9,则输出为 True,因为 9 的二进制表示形式为 1001,它是回文。为了解决这个问题,我们将遵循以下步骤 - ans := 0当 num > 0 时,执行以下操作:ans := ans * 2如果 num 为奇数,则ans := ans XOR 1num := num / 2返回 ans让我们看看下面的实现,以便更好地理解 - 示例实时演示def reverse_binary(num) :    ans = 0    while (num > 0) :    … 阅读更多

检查 Python 中数组和是否可以通过三种运算使其变为 K

Arnab Chakraborty
更新于 2020-12-30 13:20:44

87 次浏览

假设我们有一个名为 nums 的数字列表以及一个正值 K。我们可以对 nums 执行以下三种运算中的任何一种 - 使一个数字为负数,将数字的索引(从索引 1 开始)添加到数字本身,从数字本身减去数字的索引。最后,我们必须检查给定数组是否可以通过仅对每个元素执行一次这些运算将其转换为数组的和变为 k。因此,如果输入类似于 nums = [1, 2, 3, 7] k = 8,则输出为 True,因为我们… 阅读更多

检查 Python 中数组元素是否在 O(n) 时间和 O(1) 空间内连续(处理正数和负数)

Arnab Chakraborty
更新于 2020-12-30 13:18:32

139 次浏览

假设我们有一个名为 nums 的无序数字数组。我们必须检查它是否包含连续的值,它也应该支持负数。因此,如果输入类似于 nums = [-3, 5, 1, -2, -1, 0, 2, 4, 3],则输出为 true,因为元素是 3, 4, 5, 6, 7, 8。为了解决这个问题,我们将遵循以下步骤 - size := nums 的大小init_term := inf对于范围从 0 到 size 的 i,执行以下操作:如果 nums[i] < init_term,则init_term := nums[i]ap_sum := ((size * (2 * init_term + (size - 1) * 1)) 的商… 阅读更多

检查 Python 中数组元素是否连续

Arnab Chakraborty
更新于 2020-12-30 13:17:06

6K+ 次浏览

假设我们有一个名为 nums 的数字数组。我们必须检查它是否包含连续的值。因此,如果输入类似于 nums = [6, 8, 3, 5, 4, 7],则输出为 true,因为元素是 3, 4, 5, 6, 7, 8。为了解决这个问题,我们将遵循以下步骤 - 如果 nums 的大小 < 1,则返回 Falsemin_val := nums 的最小值,max_val := nums 的最大值如果 (max_val - min_val + 1) 与 nums 的大小相同,则对于范围从 0 到 nums 大小的 i,执行以下操作:如果 nums[i] < 0,则 j:= -nums[i]… 阅读更多

检查 Python 中数组是否包含允许重复的连续整数

Arnab Chakraborty
更新于 2020-12-30 13:15:40

349 次浏览

假设我们有一个名为 nums 的数字数组,它可能包含重复元素。我们必须检查它是否是一组连续的数字。因此,如果输入类似于 nums = [6, 8, 8, 3, 3, 3, 5, 4, 4, 7],则输出为 true,因为元素是 3, 4, 5, 6, 7, 8。为了解决这个问题,我们将遵循以下步骤 - 对列表 nums 进行排序对于范围从 1 到 nums 大小 - 1 的 i,执行以下操作:如果 nums[i] - nums[i-1] > 1,则返回 Falsereturn True让我们看看下面的实现,以便更好地理解… 阅读更多

广告
© . All rights reserved.