Avatar

Organizations

8 results for 位运算
  • 给定一个二进制数组 nums 和一个整数 k

    k 位翻转 就是从 nums 中选择一个长度为 k子数组,同时把子数组中的每一个 0 都改成 1 ,把子数组中的每一个 1 都改成0

    返回数组中不存在 0 所需的最小 k 位翻转次数。如果不可能,则返回  -1 。

    leetcode 困难 位运算 队列 数组 Created Mon, 19 Sep 2022 18:54:07 +0800
  • 给你一个整数数组  nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。找出只出现一次的那两个元素。你可以按 任意顺序 返回答案。

    leetcode 中等 位运算 数组 Created Mon, 19 Sep 2022 16:22:28 +0800
  • Given two integers dividend and divisor, divide two integers without using multiplication, division, and mod operator.

    The integer division should truncate toward zero, which means losing its fractional part. For example, 8.345 would be truncated to 8, and -2.7335 would be truncated to -2.

    Return the quotient after dividing dividend by divisor.

    leetcode 中等 位运算 数学 Created Tue, 21 Jun 2022 15:53:24 +0800
  • 给你一个整数数组  nums 。如果  nums  的一个子集中,所有元素的乘积可以表示为一个或多个 互不相同的质数 的乘积,那么我们称它为  好子集 。

    • 比方说,如果  nums = [1, 2, 3, 4] :
      • [2, 3] ,[1, 2, 3]  和  [1, 3]  是   子集,乘积分别为  6 = 2*3 ,6 = 2*3  和  3 = 3 。
      • [1, 4] 和  [4]  不是   子集,因为乘积分别为  4 = 2*2 和  4 = 2*2 。

    请你返回 nums  中不同的    子集的数目对 109 + 7 取余  的结果。

    nums  中的 子集  是通过删除 nums  中一些(可能一个都不删除,也可能全部都删除)元素后剩余元素组成的数组。如果两个子集删除的下标不同,那么它们被视为不同的子集。

    leetcode 困难 位运算 数组 数学 Created Tue, 22 Feb 2022 09:23:56 +0800
  • 当一个字符串 s  包含的每一种字母的大写和小写形式 同时  出现在 s  中,就称这个字符串  s  是 美好 字符串。比方说,"abABB"  是美好字符串,因为  'A' 和  'a'  同时出现了,且  'B' 和  'b'  也同时出现了。然而,"abA"  不是美好字符串因为  'b'  出现了,而  'B'  没有出现。

    给你一个字符串  s ,请你返回  s  最长的  美好子字符串 。如果有多个答案,请你返回  最早  出现的一个。如果不存在美好子字符串,请你返回一个空字符串。

    leetcode 简单 位运算 哈希表 字符串 Created Tue, 01 Feb 2022 19:52:49 +0800
  • 给你一个下标从  0 开始的字符串数组  words 。每个字符串都只包含 小写英文字母 。words  中任意一个子串中,每个字母都至多只出现一次。

    如果通过以下操作之一,我们可以从 s1  的字母集合得到 s2  的字母集合,那么我们称这两个字符串为 关联的 :

    • 往  s1  的字母集合中添加一个字母。
    • 从  s1  的字母集合中删去一个字母。
    • s1  中的一个字母替换成另外任意一个字母(也可以替换为这个字母本身)。

    数组  words  可以分为一个或者多个无交集的  。一个字符串与一个组如果满足以下 任一  条件,它就属于这个组:

    • 它与组内 至少  一个其他字符串关联。
    • 它是这个组中 唯一  的字符串。

    注意,你需要确保分好组后,一个组内的任一字符串与其他组的字符串都不关联。可以证明在这个条件下,分组方案是唯一的。

    请你返回一个长度为 2  的数组  ans :

    • ans[0]  是  words  分组后的  总组数 。
    • ans[1]  是字符串数目最多的组所包含的字符串数目。
  • 给你两个下标从 0 开始的字符串数组 startWordstargetWords 。每个字符串都仅由 小写英文字母 组成。

    对于 targetWords 中的每个字符串,检查是否能够从 startWords 中选出一个字符串,执行一次 转换操作 ,得到的结果与当前  targetWords 字符串相等。

    转换操作 如下面两步所述:

    1. 追加 任何 不存在 于当前字符串的任一小写字母到当前字符串的末尾。
      • 例如,如果字符串为 "abc" ,那么字母 'd''e''y' 都可以加到该字符串末尾,但 'a' 就不行。如果追加的是 'd' ,那么结果字符串为 "abcd"
    2. 重排 新字符串中的字母,可以按 任意 顺序重新排布字母。
      • 例如,"abcd" 可以重排为 "acbd""bacd""cbda",以此类推。注意,它也可以重排为 "abcd" 自身。

    找出 targetWords 中有多少字符串能够由  startWords 中的 任一 字符串执行上述转换操作获得。返回 targetWords 中这类 字符串的数目

    leetcode 中等 位运算 Created Sun, 09 Jan 2022 18:43:16 +0800
  • n 位格雷码序列 是一个由 2n 个整数组成的序列,其中:

    • 每个整数都在范围 [0, 2n - 1] 内(含 02n - 1
    • 第一个整数是 0
    • 一个整数在序列中出现 不超过一次
    • 每对 相邻 整数的二进制表示 恰好一位不同 ,且
    • 第一个最后一个 整数的二进制表示 恰好一位不同

    给你一个整数 n ,返回任一有效的 n 位格雷码序列

    leetcode 中等 位运算 数学 回溯 Created Sat, 08 Jan 2022 16:57:11 +0800