查找两组整数的所有成对 OR 的集合

2024-02-14

给定两个集合,每个集合都包含整数值,如何找到包含所有可能的成对值的集合ORs这两组的值?例如。 (所有数字都是二进制)

{1, 10} x {100, 1000} = {101, 1001, 110, 1010}
{1, 10} x {11, 101} = {11, 101, 111}

第一个示例产生完整的四种组合,而第二个示例仅产生三种组合,因为两个集合共享一些位。显然结果可以计算为O(m*n),但是考虑到在许多情况下结果的大小将小于m*n?

在某些情况下,结果集明显小于m*n (e.g. {1, 11, 111} x {10, 110} = {11, 111}) - 但我无法以足够通用的方式来确定所有这些情况的确切性质来获得算法。理想情况下它应该运行在O(r), where r是结果集的大小。可能有某种方法可以对源集进行分区,使用动态编程方法构建结果,或者以这种方式做其他事情,但目前我找不到它。


虽然我对此了解不多,但我想知道是否根据数据的基数,使用trie http://en.wikipedia.org/wiki/Trie一套可以提高效率。当遍历另一个设置为or对于索引集合,如果可以确定比特与索引集合中的当前整数匹配,则可以跳过树的整个分支。

另一种优化可能是,如果我们已经有 2^(n-1) 个长度为 n 的结果,则跳过该长度的所有配对;例如,有八个可能的整数,长度为四位。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

查找两组整数的所有成对 OR 的集合 的相关文章

  • 如何在 O(n) 时间内遍历二叉树而不需要额外的内存

    给定一棵带有整数 左指针和右指针的二叉树 如何在 O n 时间和 O 1 额外内存 无堆栈 队列 递归 内遍历该树 This guy http nandacumar blogspot com 2006 06 traversing tree
  • 使用Redis从有限范围内生成唯一ID

    我有一些数据库项目 除了主键之外 还需要项目所属组的唯一索引 我们来调用属性nbr 以及将项目分组在一起并定义唯一范围的属性nbr 我们会打电话group This nbr必须在 1 N 范围内 并且may从外部源导入项目时进行设置 由于所
  • 树中的节点是否被视为其自己的祖先?

    我想知道计算机科学背景下对 祖先 定义的共识是什么 我问只是因为在算法简介 http en wikipedia org wiki Introduction to Algorithms 第二版 第 14 页 第259章 有算法的描述Tree
  • 如何在代码生成过程中简化包含变量的 C 风格算术表达式?

    我正在尝试优化编译器中的表达式求值 算术表达式都是C风格的 并且它们可以包含变量 我希望尽可能简化表达 例如 3 100 A B 100 3 100可以简化为409 300 A B 主要取决于分配律 结合律和交换律 我遇到的主要困难是如何将
  • 这个洗牌算法有什么问题吗?

    我一直在做一些休闲假期计算 我的迷你项目是模拟意大利游戏 tomboli 一个关键的组成部分是对以下过程的模拟 游戏由一名男子控制 他拿着一袋 90 个弹珠 编号为 1 到 90 他从袋中随机取出一颗弹珠 每次向玩家喊出弹珠编号 经过一番思
  • 在 Python 中删除表达式树及其每个子表达式树中第一个元素周围的括号

    目标是实现简化操作 删除表达式树及其每个子表达式树中第一个元素周围的括号 其中表达式作为括在各个括号中的字符串输入给出 这必须适用于任意数量的括号 例如 12 3 45 6 gt 123 45 6 删除 12 周围的括号 然后删除 45 周
  • 使用 std::set 时重载运算符<

    这是我第一次使用 std set 容器 并且我对操作符 std less 遇到了问题 我声明该集合 std set
  • 修改排列算法以防止重复打印输出的策略

    我一直在审查实践算法 目前正在研究一种我非常喜欢的排列算法 void permute char set int begin int end int range end begin if range 1 cout lt lt set lt l
  • 使用 HashSet 创建整数集

    我想创建一个表示整数集的类 使用HashSet
  • Java:使用indexOf方法根据另一个数组对数组进行排序

    我想根据另一个数组 索引 的排序顺序迭代两个数组 A B 在本例中为 10 34 32 21 String A a b c d String B e f g h int indexes 10 34 32 21 为这里的坏例子道歉 我已经更新
  • 检查数独字段的很酷的算法?

    有谁知道一个简单的算法来检查数独配置是否有效 我想出的最简单的算法是 对于大小为 n 的板 伪代码 for each row for each number k in 1 n if k is not in the row using ano
  • 如何设置K-means openCV c++的初始中心

    我正在尝试使用 OpenCv 和 Kmeans 对图像进行分割 我刚刚实现的代码如下 include opencv2 objdetect objdetect hpp include opencv2 highgui highgui hpp i
  • 两个非嵌套循环的大 O 表示法

    对于两个非嵌套的 for 循环 大 O 表示法是什么 Example for int i 0 i
  • dict_values 视图什么时候可以像设置一样(以及为什么)?

    文档说值视图不被视为类似集合 https docs python org 3 library stdtypes html dictionary view objects 但有时它们是 gt gt gt d 1 1 gt gt gt d va
  • 如何从二叉搜索树中均匀随机地返回节点?

    给定一个 BST 可能平衡也可能不平衡 如何能够均匀地随机返回 任何 节点 一个限制是您不能使用外部索引数据结构 您必须以每个节点都有平等被访问的机会的方式遍历树 这个问题让我困惑了好一阵子 如果我们确实可以使用外部哈希表 指针 我们可以对
  • 32 位数字中 1 的数量

    我正在寻找一种在 32 位数字中包含 1 数量的方法 之间不使用循环 任何人都可以帮助我并向我提供代码或算法吗 这样做 提前致谢 See Integer bitCount int http java sun com javase 6 doc
  • 字符串排序真的是 O(n^2logn) 吗? [复制]

    这个问题在这里已经有答案了 我读了以下内容 排序需要 O NlogN 那么它怎么是 O N 2logN 我们在这里想念的是 两个字符串的比较不是 O 1 在最坏的情况下 需要 在 所以最终的复杂度是O N 2logN 它是否正确 我一直认为
  • 在 O(n) 时间内找到 n x n 矩阵中的局部最小值

    所以 这不是我的家庭作业问题 而是取自 coursera 算法和数据结构课程的未评分作业 现已完成 You are given an n by n grid of distinct numbers A number is a local m
  • 快速求解子集和

    考虑这种解决子集和问题的方法 def subset summing to zero activities subsets 0 for activity cost in activities iteritems old subsets sub
  • 确定解决迷宫问题的最小线段数

    我有一个问题 我需要定义一个具有最少数量的顶点的多边形 该多边形与不透明的图像中的每个像素相交或包含每个像素 令 N 为图像中的像素数 我唯一的假设是图像的边界 孔 内不能包含透明像素 并且至少有两个像素是不透明的 举个例子 假设我有以下图

随机推荐

  • 连接池到底是什么?

    我听说过连接池这个术语 并通过谷歌搜索寻找一些参考资料 但不知道何时使用它 我什么时候应该考虑使用 连接池 有什么优点和 连接池的缺点 任何建议 这个想法是 您不会打开和关闭与数据库的单个连接 而是创建一个打开连接的 池 然后重用它们 一旦
  • Cocoa App webview未加载请求

    我已经使用 webview 加载 url 但它没有加载 我已经尝试使用 wkwebview 进行相同的操作 但无法加载网址 我已经做了以下 导入WebKit Info plist 允许任意负载 是 允许任意加载网页内容 是 LOG dnss
  • 使用智能指针实现容器

    好的 所以每个人都知道应该像瘟疫一样避免原始指针并更喜欢智能指针 但是这个建议在实现容器时适用吗 这就是我想要实现的目标 template
  • 在 Msys 上安装 Pip

    我使用 Python 3 5 2 和 Msys 构建了一个简单的 PyGTK 应用程序 但我需要一些默认安装中没有的模块 尽管我可以使用setup py install为了得到它们我宁愿使用pip 我环顾四周发现this https sou
  • 使用 lambda 表达式的嵌套集合创建对象图

    我对利用 lambda 表达式创建属性选择器树感兴趣 使用场景是 我们有一些代码对对象图进行一些递归反射 为了限制递归的范围 我们目前使用 Attributes 来标记应该遍历哪些属性 即获取对象的所有修饰属性 如果该属性是具有修饰属性的引
  • Java接口实现对象?

    是否有 Java 接口隐式实现 java lang Object 当我做这样的事情时出现了这个问题 public static String sizeSort String sa Comparator
  • 在 bash_profile 中设置路径

    为什么设置一个PATH要求 PATH 在最后 PATH Library Frameworks Python framework Versions 2 7 bin PATH 当我附加一条路径时我会这样做 PATH PATH 我如何附加一个PA
  • pylab/networkx;更新后不显示节点标签

    将 matplotlib 更新到当前版本后 我遇到了 networkX 中节点标签的问题 如果我使用nx draw G 命令 我得到一个图表 但没有显示标签 但我们还是举个例子吧 import networkx as nx import m
  • 计算已用时间的 Bash 脚本

    我正在 bash 中编写一个脚本来计算执行命令所用的时间 请考虑 STARTTIME date s command block that takes time to complete ENDTIME date s echo It takes
  • 如何在 p:calendar 中使用 java.time.ZonedDateTime / LocalDateTime

    我一直在 Java EE 应用程序中使用 Joda Time 进行日期时间操作 其中关联客户端提交的日期时间字符串表示形式在将其提交到数据库之前已使用以下转换例程进行转换 即在getAsObject JSF 转换器中的方法 org joda
  • Xampp MySQL 未启动 - “MYSQL 未在 XAMPP 3.2.1 版本上启动...”

    我在我的笔记本电脑上安装了 xampp 版本 3 2 1 之前 mysql 工作正常 但突然 mysql 停止工作 而 apache 和其他人正在工作 当我单击启动 mysql 时 它显示此错误 我使用 Windows 10 8 52 32
  • 我在尝试发送消息时收到错误

    send setOnClickListener new OnClickListener Override public void onClick View v TODO Auto generated method stub URI uri
  • KendoUI 网格默认值与数据注释

    我将 Kendo UI Grid 与 ASP NET MVC Helpers 和自动生成的列一起使用 I have DefaultValue 60 60 我的视图模型中存在注释 但 Kendo 助手似乎并不尊重这一点 我可以指定默认值 可能
  • 如何将 Observable 序列化到云端并返回

    我需要分割处理序列 就像在这个问题中如何使用 net RX 组织数据处理器的序列 https stackoverflow com q 13310865 296494 到 Azure 环境中的多个计算单元 这个想法是将 Observable
  • 如何在 android 10 - android Q - MIUI 11 中从后台启动活动

    我在真实设备上的 android 10 android Q MIUI 11 中从后台启动活动时遇到问题 在这个线程中 在android 10中启动活动背景 https stackoverflow com a 59421118 1006090
  • Java Selenium WebDriver 找不到表单字段

    我正在测试一个注册页面 并且尝试了名称 xpath id 类 但似乎没有任何效果 这是我的硒代码 driver findElement By id pushMenu click Thread sleep 2000 driver findEl
  • CALayer + NSOutlineView/NSTableView

    问题是 基于视图的 NSOutlineView 或 NSTableView 两者都有这个问题 包含一个托管 CALayer 的自定义控件 用于自定义动画目的 调整大纲视图大小时或删除行 动画删除 后 CALayer 会在错误的位置绘制 这是
  • 检测光盘是否在 DVD 驱动器中

    有没有简单的方法来检测 DVD 驱动器中是否插入了光盘 我不在乎哪种光盘 CD DVD 或蓝光 使用 WMI 检测磁盘是否在 CD DVD 驱动器中 foreach var drive in DriveInfo GetDrives Wher
  • AngularJS - 等待多个资源查询完成

    我有一个用 ngResource 定义的工厂 App factory Account function resource return resource url query method GET 我正在多次调用该工厂中定义的查询方法 这些调
  • 查找两组整数的所有成对 OR 的集合

    给定两个集合 每个集合都包含整数值 如何找到包含所有可能的成对值的集合ORs这两组的值 例如 所有数字都是二进制 1 10 x 100 1000 101 1001 110 1010 1 10 x 11 101 11 101 111 第一个示