力扣刷题 day55:10-25

1.数组异或操作

给你两个整数,n 和 start 。

数组 nums 定义为:numsi = start + 2*i(下标从 0 开始)且 n == nums.length 。

请返回 nums 中所有元素按位异或(XOR)后得到的结果。

方法一:位运算

python 复制代码
#方法一:位运算
def xorOperation(n,start):
    res=0
    for i in range(n):
        res^=(start+2*i)  #逐个异或
    return res

2.统计一致字符串的数目

给你一个由不同字符组成的字符串 allowed 和一个字符串数组 words 。如果一个字符串的每一个字符都在 allowed 中,就称这个字符串是 一致字符串 。

请你返回 words 数组中 一致字符串 的数目。

方法一:位运算

python 复制代码
#方法一:位运算
def countConsistentStrings(allowed,words):
    target=0
    for a in allowed:
        target|=1<<ord(a)-ord('a')  #用三十二位数存储出现的字母例如ab 11 abd 1011
    res=0
    for w in words:
        tem=0
        for i in w:
            tem|=1<<ord(i)-ord('a') #左移 如1<<2 100
        res+=(target|tem) ==target #看看或后等不等于目标值,如1011 | 1010==1011
    return res
相关推荐
悠仁さん4 分钟前
哈夫曼树的简单介绍
算法
bIo7lyA8v6 分钟前
算法与数据结构协同优化的设计思想的技术8
数据结构·算法
Lsk_Smion8 分钟前
力扣实训 _ [98].验证二叉搜索树 _ 将二叉树展开成链表
数据结构·算法·leetcode
8Qi811 分钟前
LeetCode 377:组合总和 Ⅳ(Combination Sum IV)—— 题解 ✅
算法·leetcode·动态规划·完全背包
凯瑟琳.奥古斯特12 分钟前
力扣1002题C++解法详解
开发语言·c++·算法·leetcode·职场和发展
小小工匠18 分钟前
Redis - 从数据结构到高可用的九个关键问题
数据结构·redis
CHHH_HHH24 分钟前
【C++】红黑树:比AVL树更实用的平衡二叉搜索树
开发语言·数据结构·c++·算法·stl
Lazionr28 分钟前
基础算法 | 模拟算法练习
c++·算法
_日拱一卒35 分钟前
LeetCode:17电话号码的字母组合
java·数据结构·算法·leetcode·职场和发展
醉颜凉37 分钟前
Scala自定义Monad实战:从理论到应用的完整指南
大数据·算法·scala