跳至主要內容

位运算


位运算

全部标签

数据结构

数组 矩阵 链表 双向链表 单调栈 队列 单调队列 堆(优先队列) 哈希表 字符串 字符串匹配 二叉树 二叉搜索树 最小生成树 有序集合 拓扑排序 最短路 强连通分量 欧拉回路 双连通分量 并查集 字典树 线段树 树状数组 后缀数组

算法

枚举 递归 分治 回溯 贪心 动态规划 排序 桶排序 计数排序 基数排序 归并排序 快速选择 二分查找 记忆化搜索 深度优先搜索 广度优先搜索 双指针 位运算 前缀和 计数 滑动窗口 状态压缩 哈希函数 滚动哈希 扫描线

其他

数学 数论 几何 博弈 模拟 组合数学 随机化 概率与统计 水塘抽样 拒绝采样 数据库 设计 数据流 脑筋急转弯 交互 迭代器 多线程


题号标题题解标签难度
29两数相除open in new window[✓]位运算 数学
67二进制求和open in new window[✓]位运算 数学 字符串 1+
78子集open in new window[✓]位运算 数组 回溯
89格雷编码open in new window位运算 数学 回溯
90子集 IIopen in new window[✓]位运算 数组 回溯
136只出现一次的数字open in new window[✓]位运算 数组
137只出现一次的数字 IIopen in new window[✓]位运算 数组
187重复的DNA序列open in new window位运算 哈希表 字符串 3+
190颠倒二进制位open in new window[✓]位运算 分治
191位1的个数open in new window[✓]位运算 分治
201数字范围按位与open in new window[✓]位运算
222完全二叉树的节点个数open in new window[✓]位运算 二分查找 1+
2312 的幂open in new window位运算 递归 数学
260只出现一次的数字 IIIopen in new window位运算 数组
266回文排列 🔒open in new window位运算 哈希表 字符串
268丢失的数字open in new window[✓]位运算 数组 哈希表 3+
287寻找重复数open in new window[✓]位运算 数组 双指针 1+
318最大单词长度乘积open in new window位运算 数组 字符串
320列举单词的全部缩写 🔒open in new window位运算 字符串 回溯
338比特位计数open in new window位运算 动态规划
3424的幂open in new window位运算 递归 数学
351安卓系统手势解锁 🔒open in new window位运算 动态规划 回溯 1+
371两整数之和open in new window位运算 数学
389找不同open in new window位运算 哈希表 字符串 1+
393UTF-8 编码验证open in new window位运算 数组
397整数替换open in new window贪心 位运算 记忆化搜索 1+
401二进制手表open in new window位运算 回溯
405数字转换为十六进制数open in new window位运算 数学
411最短独占单词缩写 🔒open in new window位运算 数组 字符串 1+
421数组中两个数的最大异或值open in new window位运算 字典树 数组 1+
461汉明距离open in new window位运算
464我能赢吗open in new window位运算 记忆化搜索 数学 3+
465最优账单平衡 🔒open in new window位运算 数组 动态规划 2+
473火柴拼正方形open in new window位运算 数组 动态规划 2+
476数字的补数open in new window位运算
477汉明距离总和open in new window位运算 数组 数学
491非递减子序列open in new window位运算 数组 哈希表 1+
526优美的排列open in new window位运算 数组 动态规划 2+
638大礼包open in new window位运算 记忆化搜索 数组 3+
645错误的集合open in new window位运算 数组 哈希表 1+
672灯泡开关 Ⅱopen in new window位运算 深度优先搜索 广度优先搜索 1+
691贴纸拼词open in new window位运算 数组 字符串 3+
693交替位二进制数open in new window位运算
698划分为k个相等的子集open in new window位运算 记忆化搜索 数组 3+
751IP 到 CIDR 🔒open in new window位运算 字符串
756金字塔转换矩阵open in new window位运算 深度优先搜索 广度优先搜索
762二进制表示中质数个计算置位open in new window位运算 数学
779第K个语法符号open in new window位运算 递归 数学
782变为棋盘open in new window位运算 数组 数学 1+
784字母大小写全排列open in new window位运算 字符串 回溯
805数组的均值分割open in new window位运算 数组 数学 2+
810黑板异或游戏open in new window位运算 脑筋急转弯 数组 2+
832翻转图像open in new window位运算 数组 双指针 2+
847访问所有节点的最短路径open in new window位运算 广度优先搜索 2+
861翻转矩阵后的得分open in new window贪心 位运算 数组 1+
864获取所有钥匙的最短路径open in new window位运算 广度优先搜索 数组 1+
868二进制间距open in new window位运算
898子数组按位或操作open in new window位运算 数组 动态规划
943最短超级串open in new window位运算 数组 字符串 2+
957N 天后的牢房open in new window位运算 数组 哈希表 1+
980不同路径 IIIopen in new window位运算 数组 回溯 1+
982按位与为零的三元组open in new window位运算 数组 哈希表
995K 连续位的最小翻转次数open in new window位运算 队列 数组 2+
996平方数组的数目open in new window位运算 数组 哈希表 4+
1009十进制整数的反码open in new window位运算
1018可被 5 整除的二进制前缀open in new window位运算 数组
1066校园自行车分配 II 🔒open in new window位运算 数组 动态规划 2+
1125最小的必要团队open in new window位运算 数组 动态规划 1+
1177构建回文串检测open in new window位运算 数组 哈希表 2+
1178猜字谜open in new window位运算 字典树 数组 2+
1238循环码排列open in new window位运算 数学 回溯
1239串联字符串的最大长度open in new window位运算 数组 字符串 1+
1255得分最高的单词集合open in new window位运算 数组 字符串 3+
1256加密数字 🔒open in new window位运算 数学 字符串
1284转化为全零矩阵的最少反转次数open in new window位运算 广度优先搜索 数组 2+
1310子数组异或查询open in new window位运算 数组 前缀和
1318或运算的最小翻转次数open in new window位运算
1342将数字变成 0 的操作次数open in new window位运算 数学
1349参加考试的最大学生数open in new window位运算 数组 动态规划 2+
1356根据数字二进制下 1 的数目排序open in new window位运算 数组 计数 1+
1371每个元音包含偶数次的最长子字符串open in new window位运算 哈希表 字符串 1+
1386安排电影院座位open in new window贪心 位运算 数组 1+
1404将二进制表示减到 1 的步骤数open in new window位运算 字符串
1434每个人戴不同帽子的方案数open in new window位运算 数组 动态规划 1+
1442形成两个异或相等数组的三元组数目open in new window位运算 数组 哈希表 2+
1457二叉树中的伪回文路径open in new window位运算 深度优先搜索 2+
1461检查一个字符串是否包含所有长度为 K 的二进制子串open in new window位运算 哈希表 字符串 2+
1486数组异或操作open in new window位运算 数学
1494并行课程 IIopen in new window位运算 动态规划 1+
1506找到 N 叉树的根节点 🔒open in new window位运算 深度优先搜索 1+
1521找到最接近目标值的函数值open in new window位运算 线段树 数组 1+
1525字符串的好分割数目open in new window位运算 哈希表 字符串 1+
1542找出最长的超赞子字符串open in new window位运算 哈希表 字符串
1558得到目标数组的最少函数调用次数open in new window贪心 位运算 数组
1595连通两组点的最小成本open in new window位运算 数组 动态规划 2+
1601最多可达成的换楼请求数目open in new window位运算 数组 回溯 1+
1611使整数变为 0 的最少操作次数open in new window位运算 记忆化搜索 动态规划
1617统计子树中城市之间最大距离open in new window位运算 动态规划 2+
1655分配重复整数open in new window位运算 数组 动态规划 2+
1659最大化网格幸福感open in new window位运算 记忆化搜索 动态规划 1+
1680连接连续二进制数字open in new window位运算 数学 模拟
1681最小不兼容性open in new window位运算 数组 动态规划 1+
1684统计一致字符串的数目open in new window位运算 数组 哈希表 2+
1707与数组中元素的最大异或值open in new window位运算 字典树 数组
1720解码异或后的数组open in new window位运算 数组
1723完成所有工作的最短时间open in new window位运算 数组 动态规划 2+
1734解码异或后的排列open in new window位运算 数组
1738找出第 K 大的异或坐标值open in new window位运算 数组 分治 5+
1755最接近目标值的子序列和open in new window位运算 数组 双指针 2+
1763最长的美好子字符串open in new window位运算 哈希表 字符串 2+
1787使所有区间的异或结果为零open in new window位运算 数组 动态规划
1799N 次操作后的最大分数和open in new window位运算 数组 数学 4+
1803统计异或值在范围内的数对有多少open in new window位运算 字典树 数组
1815得到新鲜甜甜圈的最多组数open in new window位运算 记忆化搜索 数组 2+
1829每个查询的最大异或值open in new window位运算 数组 前缀和
1835所有数对按位与结果的异或和open in new window位运算 数组 数学
1863找出所有子集的异或总和再求和open in new window位运算 数组 数学 3+
1879两个数组最小的异或值之和open in new window位运算 数组 动态规划 1+
1908Nim 游戏 II 🔒open in new window位运算 脑筋急转弯 数组 3+
1915最美子字符串的数目open in new window位运算 哈希表 字符串 1+
1930长度为 3 的不同回文子序列open in new window位运算 哈希表 字符串 1+
1938查询最大基因差open in new window位运算 深度优先搜索 字典树 2+
1947最大兼容性评分和open in new window位运算 数组 动态规划 2+
1986完成任务的最少工作时间段open in new window位运算 数组 动态规划 2+
1994好子集的数目open in new window位运算 数组 数学 2+
2002两个回文子序列长度的最大乘积open in new window位运算 字符串 动态规划 2+
2032至少在两个数组中出现的值open in new window位运算 数组 哈希表
2035将数组分成两个数组并最小化数组和的差open in new window位运算 数组 双指针 4+
2044统计按位或能得到最大值的子集数目open in new window[✓]位运算 数组 回溯 1+
2128通过翻转行或列来去除所有的 1 🔒open in new window位运算 数组 数学 1+
2135统计追加字母可以获得的单词数open in new window位运算 数组 哈希表 2+
2151基于陈述统计最多好人数open in new window位运算 数组 回溯 1+
2152穿过所有点的所需最少直线数量 🔒open in new window位运算 几何 数组 5+
2157字符串分组open in new window位运算 并查集 字符串
2172数组的最大与和open in new window位运算 数组 动态规划 1+
2174通过翻转行或列来去除所有的 1 II 🔒open in new window位运算 广度优先搜索 数组 1+
2184建造坚实的砖墙的方法数 🔒open in new window位运算 数组 动态规划 1+
2206将数组划分成相等数对open in new window位运算 数组 哈希表 1+
2212射箭比赛中的最大得分open in new window位运算 数组 回溯 1+
2220转换数字的最少位翻转次数open in new window位运算
2247K 条高速公路的最大旅行费用 🔒open in new window位运算 动态规划 1+
2275按位与结果大于零的最长组合open in new window位运算 数组 哈希表 1+
2305公平分发饼干open in new window位运算 数组 动态规划 2+
2306公司命名open in new window位运算 数组 哈希表 2+
2317操作后的最大异或和open in new window位运算 数组 数学
2322从树中删除边的最小分数open in new window位运算 深度优先搜索 1+
2351第一个出现两次的字母open in new window位运算 哈希表 字符串 1+
2354优质数对的数目open in new window位运算 数组 哈希表 1+
2397被列覆盖的最多行数open in new window位运算 数组 回溯 2+
2401最长优雅子数组open in new window位运算 数组 滑动窗口
2403杀死所有怪物的最短时间 🔒open in new window位运算 数组 动态规划 1+
2411按位或最大的最小子数组长度open in new window位运算 数组 二分查找 1+
2419按位与最大的最长子数组open in new window位运算 脑筋急转弯 数组
2425所有数对的异或和open in new window位运算 脑筋急转弯 数组
2429最小异或open in new window贪心 位运算
2433找出前缀异或的原始数组open in new window位运算 数组
2438二的幂数组中查询范围内的乘积open in new window位运算 数组 前缀和
2505所有子序列和的按位或 🔒open in new window位运算 脑筋急转弯 数组 1+
2506统计相似字符串对的数目open in new window位运算 数组 哈希表 2+
2527查询数组异或美丽值open in new window位运算 数组 数学
2546执行逐位运算使字符串相等open in new window位运算 字符串
2564子字符串异或查询open in new window位运算 数组 哈希表 1+
2568最小无法得到的或值open in new window位运算 脑筋急转弯 数组
2571将整数减少到零需要的最少操作数open in new window贪心 位运算 动态规划
2572无平方子集计数open in new window位运算 数组 数学 2+
2588统计美丽子数组数目open in new window位运算 数组 哈希表 1+
2595奇偶位数open in new window位运算
2657找到两个数组的前缀公共数组open in new window位运算 数组 哈希表
2680最大或值open in new window贪心 位运算 数组 1+
2683相邻值的按位异或open in new window位运算 数组
2708一个小组的最大实力值open in new window贪心 位运算 数组 4+
2732找到矩阵中的好子集open in new window位运算 数组 哈希表 1+
2741特别的排列open in new window位运算 数组 动态规划 1+
2749得到整数零需要执行的最少操作数open in new window位运算 脑筋急转弯
2791树中可以形成回文的路径数open in new window位运算 深度优先搜索 2+
2802找出第 K 个幸运数字 🔒open in new window位运算 数学 字符串
2835使子序列的和等于目标的最少操作次数open in new window贪心 位运算 数组
2836在传球游戏中最大化函数值open in new window位运算 数组 动态规划
2857统计距离为 k 的点对open in new window位运算 数组 哈希表
2859计算 K 置位下标对应元素的和open in new window位运算 数组
2869收集元素的最少操作次数open in new window位运算 数组 哈希表
2871将数组分割成最多数目的子数组open in new window贪心 位运算 数组
2897对数组执行操作使平方和最大open in new window贪心 位运算 数组 1+
2917找出数组中的 K-or 值open in new window位运算 数组
2920收集所有金币可获得的最大积分open in new window位运算 深度优先搜索 2+
2932找出强数对的最大异或值 Iopen in new window位运算 字典树 数组 2+
2935找出强数对的最大异或值 IIopen in new window位运算 字典树 数组 2+
2939最大异或乘积open in new window贪心 位运算 数学
2959关闭分部的可行集合数目open in new window位运算 枚举 2+
2980检查按位或是否存在尾随零open in new window位运算 数组
2992自整除排列的数量 🔒open in new window位运算 数组 动态规划 2+
2997使数组异或和等于 K 的最少操作次数open in new window位运算 数组
3003执行操作后的最大分割数量open in new window位运算 字符串 动态规划 1+
3007价值和小于等于 K 的最大数字open in new window位运算 二分查找 动态规划
3011判断一个数组是否可以变为有序open in new window位运算 数组 排序
3022给定操作次数内使剩余元素的或值最小open in new window贪心 位运算 数组
3064使用按位查询猜测数字 I 🔒open in new window位运算 交互
3068最大节点价值之和open in new window贪心 位运算 3+
3094使用按位查询猜测数字 II 🔒open in new window位运算 交互
3095或值至少 K 的最短子数组 Iopen in new window位运算 数组 滑动窗口
3097或值至少为 K 的最短子数组 IIopen in new window位运算 数组 滑动窗口
3108带权图里旅途的最小代价open in new window位运算 并查集 1+
3116单面值组合的第 K 小金额open in new window位运算 数组 数学 3+
3117划分数组得到最小的值之和open in new window位运算 线段树 队列 3+
3133数组最后一个元素的最小值open in new window位运算
3141最大汉明距离 🔒open in new window位运算 广度优先搜索 数组
3145大数组元素的乘积open in new window位运算 数组 二分查找
3149找出分数最低的排列open in new window位运算 数组 动态规划 1+
3154到达第 K 级台阶的方案数open in new window位运算 记忆化搜索 数学 2+
3158求出出现两次数字的 XOR 值open in new window位运算 数组 哈希表
3171找到按位或最接近 K 的子数组open in new window位运算 线段树 数组 1+
3173相邻元素的按位或 🔒open in new window位运算 数组
3181执行操作可获得的最大总奖励 IIopen in new window位运算 数组 动态规划
3191使二进制数组全部等于 1 的最少操作次数 Iopen in new window位运算 队列 数组 2+
3199用偶数异或设置位计数三元组 I 🔒open in new window位运算 数组
3209子数组按位与值为 K 的数目open in new window位运算 线段树 数组 1+
3211生成不含相邻零的二进制字符串open in new window位运算 递归 字符串
3215用偶数异或设置位计数三元组 II 🔒open in new window位运算 数组
3226使两个整数相等的位更改次数open in new window位运算
3276选择矩阵中单元格的最大得分open in new window位运算 数组 动态规划 2+
3283吃掉所有兵需要的最多移动次数open in new window位运算 广度优先搜索 数组 3+
3287求出数组中最大序列值open in new window位运算 数组 动态规划
3304找出第 K 个字符 Iopen in new window位运算 递归 数学 1+
3307找出第 K 个字符 IIopen in new window位运算 递归 数学
3309连接二进制表示可形成的最大数值open in new window[✓]位运算 数组 枚举
3314构造最小位运算数组 Iopen in new window位运算 数组
3315构造最小位运算数组 IIopen in new window位运算 数组
LCP 04覆盖open in new window位运算 数组 2+
LCP 13寻宝open in new window位运算 广度优先搜索 数组 3+
LCP 49环形闯关游戏open in new window位运算 并查集 数组 1+
LCP 51烹饪料理open in new window位运算 数组 回溯 1+
LCP 53守护太空城open in new window位运算 数组 动态规划 1+
LCP 69Hello LeetCode!open in new window位运算 数组 字符串 2+
剑指 Offer 15二进制中1的个数open in new window[✓]位运算
剑指 Offer 53-II0~n-1中缺失的数字open in new window[✓]位运算 数组 哈希表 2+
剑指 Offer 56数组中数字出现的次数open in new window[✓]位运算 数组
剑指 Offer 56-II数组中数字出现的次数 IIopen in new window[✓]位运算 数组
剑指 Offer 64求1+2+…+nopen in new window[✓]位运算 递归 脑筋急转弯
剑指 Offer 65不用加减乘除做加法open in new window[✓]位运算 数学
剑指 Offer II 2二进制加法open in new window[✓]位运算 数学 字符串 1+
剑指 Offer II 3前 n 个数字二进制中 1 的个数open in new window位运算 动态规划
剑指 Offer II 4只出现一次的数字open in new window[✓]位运算 数组
剑指 Offer II 5单词长度的最大乘积open in new window位运算 数组 字符串
剑指 Offer II 67最大的异或open in new window位运算 字典树 数组 1+
剑指 Offer II 79所有子集open in new window[✓]位运算 数组 回溯
面试题 01.01判定字符是否唯一open in new window[✓]位运算 哈希表 字符串 1+
面试题 01.04回文排列open in new window位运算 哈希表 字符串
面试题 05.01插入open in new window位运算
面试题 05.02二进制数转字符串open in new window位运算 数学 字符串
面试题 05.03翻转数位open in new window位运算 动态规划
面试题 05.04下一个数open in new window位运算
面试题 05.06整数转换open in new window位运算
面试题 05.07配对交换open in new window位运算
面试题 05.08绘制直线open in new window位运算 数组 数学
面试题 08.04幂集open in new window位运算 数组 回溯
面试题 08.05递归乘法open in new window位运算 递归 数学
面试题 16.01交换数字open in new window位运算 数学
面试题 16.07最大数值open in new window位运算 脑筋急转弯 数学
面试题 17.01不用加号的加法open in new window位运算 数学
面试题 17.04消失的数字open in new window位运算 数组 哈希表 2+
面试题 17.19消失的两个数字open in new window位运算 数组 哈希表