将数组拆分为唯一的对

2023-11-22

假设我从一个简单的数组开始(理论上可以是任意长度):

$ids  = array(1,2,3,4);

将这个数组拆分为一组唯一对的数组的最佳解决方案是什么,例如:

$pair[0] = array(1,2);
$pair[1] = array(1,3);
$pair[2] = array(1,4);
$pair[3] = array(2,3);
$pair[4] = array(2,4);
$pair[5] = array(3,4);

The simplest solution is to use a nested loop and build combinations as you go, although note that the complexity here is O(n2).

$ids = array(1,2,3,4,4);
$combinations = array();

$ids = array_unique($ids); // remove duplicates
$num_ids = count($ids);

for ($i = 0; $i < $num_ids; $i++)
{
  for ($j = $i+1; $j < $num_ids; $j++)
  {
    $combinations[] = array($ids[$i], $ids[$j]);
  }
}

请参阅以下网址的实际操作:http://www.ideone.com/9wzvP

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

将数组拆分为唯一的对 的相关文章

  • 单词之间没有空格的语言(例如亚洲语言)中的断词?

    我想让 MySQL 全文搜索适用于日语和中文文本以及任何其他语言 问题在于这些语言以及可能其他语言通常在单词之间没有空格 当您必须键入与文本中相同的句子时 搜索没有用 我不能只在每个字符之间添加空格 因为英语也必须有效 我想用 PHP 或
  • 为什么java中LinkedList没有initialCapacity?

    我想知道为什么LinkedList没有initialCapacity 我知道什么时候使用ArrayList什么时候LinkedList 定义集合最终大小的好习惯是 List
  • 如何检查PHP变量是否包含非数字?

    我只是想知道检查 PHP 变量中是否有非数字的方法以及它是否也检测字符之间的空格 需要确保我的表单字段中没有添加任何奇怪的内容 提前致谢 如果您的意思是您只想要一个包含数字的值 那么您可以使用ctype digit http php net
  • PHP MySQL 使用选项/选择 HTML 表单标签进行多重搜索查询

    我正在尝试使用两个搜索字段设置基本的 MySQL LIKE 搜索 我不想拥有它 所以它有多个可选搜索字段 例如if isset POST city isset POST name 我不知道如何用 HTML 来做到这一点
  • 检查 PHP 中“@”字符后面的单词

    我现在正在制作一个新闻和评论系统 但是我已经在一个部分上停留了一段时间了 我希望用户能够在 Twitter 上引用其他玩家的风格 例如 用户名 该脚本看起来像这样 不是真正的 PHP 只是想象脚本 3 string I loved the
  • 如何使用 php 下载/打印页面的特定部分

    我有一个 HTML 页面如下 Lorem Ipsum is simply dummy text of the printing and typesetting industry Lorem Ipsum has been the indust
  • 在 VB.Net 中将字节数组转换为整数

    我想知道在 vb net 中将字节数组 长度 4 转换为整数的最佳方法是什么 我知道 BitConverter 但执行函数调用来执行应该可以通过复制 4 字节内存来完成的操作似乎相当浪费 同样 将单 双精度数从二进制表示形式转换为单 双精度
  • 为什么我需要结束 ob_start()?

    php 文档建议我应该用 ob end flush 结束每个 ob start 我在网站的每个页面上使用一个 只是为了允许我在应用程序中的任何位置使用 firephp 日志方法 该应用程序运行良好 但我想知道是否有任何我不知道的东西可能有害
  • “使用未定义常量”注意,但该常量应该被定义

    共有三个文件 common php controller php 和 user php 文件 common php 如下所示 文件controller php看起来像 文件 user php 如下所示 执行脚本时 会给出通知 注意 使用未定
  • 最小化代表性整数的误差之和

    Given n integers between 0 10000 as D1 D2 Dn where there may be duplicates and n can be huge I want to find k distinct r
  • 在 PHP 中撤销 Google 访问令牌

    正如标题所示 我想以编程方式撤销授予的访问令牌 即在 PHP 中 我发现这个他们的网站 https developers google com identity protocols OAuth2WebServer tokenrevoke 但
  • jQuery Mobile 表单验证

    我有一个移动网站 除了验证之外一切都工作正常 基本上我希望从用户那里获取值 然后在单独的页面 process php 上处理它们 但是 在这样做之前 我需要检查以确保字段已填充 我已经研究了几种方法来做到这一点 但似乎没有一种有效 我现在有
  • 如何将特定范围内的标量添加到 numpy 数组?

    有没有一种更简单 更节省内存的方法可以单独在 numpy 中执行以下操作 import numpy as np ar np array a l r ar c a a 0 l ar tolist a r 它可能看起来很原始 但它涉及获取给定数
  • PHP 中只保留数组的前 N ​​个元素? [复制]

    这个问题在这里已经有答案了 有没有办法只保留数组的前 N 个 例如 10 个 元素 我知道有array pop 但是有没有更好 更优雅的方法呢 您可以使用array slice http php net array slice or arr
  • 使用 Ajax.Request 将 JSON 从浏览器传递到 PHP 的最佳方法

    您好 我有一个 JSON 对象 它是一个二维数组 我需要使用 Ajax Request 将其传递给 PHP 我知道的唯一方法 现在我使用js函数手动序列化我的数组 并获取以下格式的数据 s 1 d 3 4等 我的问题是 有没有办法更直接 有
  • SQL 最近日期

    我需要在 php 中获取诸如 2010 04 27 之类的日期作为字符串 并在表中找到最近的 5 个日期 表中的日期保存为日期类型 您可以使用DATEDIFF http dev mysql com doc refman 5 1 en dat
  • Javascript 数组到 VBScript

    我有一个使用 Javascript 构建的对象数组 我需要使用 VBScript 读取它 如下例所示 我找不到在 VbScript 代码中循环遍历数组的方法myArray object 这个例子是我的问题的简化 我无法更改页面的默认语言 这
  • php,统计字符并删除超过140个字符的内容

    我需要一个 PHP 函数来计算短语的字符数 如果短语长度超过 140 个字符 则此函数应删除所有其他字符并在短语末尾添加三个点 例如我们有 message I am what I am and you are what you are et
  • 如何在 Laravel 中使用 PUT http 动词提交表单

    我知道这个问题可能已经提出 但我就是无法让它发挥作用 如果有人可以帮助我 我将非常感激 我安装了 colletive form 但答案也可以是 html 表单标签 现在列出我的表格 我的路线和我的例外情况 Form model array
  • Repa 数组上的并行 mapM

    在我最近的work https github com bgamari mixture model with Gibbs sampling 我一直在充分利用RVar http hackage haskell org packages arch

随机推荐

  • 使用 JavaScript 包装一组 DOM 元素

    我有一系列p我页面上的标签 我想将它们全部包装到一个容器中 例如 p foo p p bar p p baz p 我想将以上所有标签包装到一个容器中 如下所示 div p foo p p bar p p baz p div 如何包裹一个No
  • 如何在 MVC 下创建简洁且 RESTful 的向导?

    我尝试在构建应用程序时尽可能保持 RESTful 但我不确定的一件事是如何创建一个向导式工作流程 保持 RESTful 和简洁 以多页面注册流程为例 选项1 我可以为每个步骤创建一个控制器 并在用户到达该步骤 或返回该步骤 时调用 new
  • CakePHP 2.0 选择表单 多选

    我有一个下拉菜单 您可以在其中选择多个值 现在假设我想编辑我的信息并创建一个包含多个选定值的下拉菜单 试图弄清楚它是如何进行的 但没有结果 假设我有 selected array 3 4 options array 1 2 3 4 echo
  • 我的 powershell 脚本在预期输出之前打印“1”。为什么?

    我编写了一个简单的 powershell 脚本 用于检查 PSA 服务板上的门票数量 并输出门票数量和与其关联的颜色 但是 我的脚本在结果之前打印 1 我对 powershell 很陌生 我似乎找不到打印此内容的行 任何帮助 将不胜感激 谢
  • MVC5 帐户控制器空引用异常

    我正在尝试将用户角色实现到我的 MVC Web 应用程序中 但是我收到了一个空异常return userManager HttpContext GetOwinContext GetUserManager
  • 错误:无法加载要扩展的配置“下一个”

    我有一个使用 jest 和 react testing library 进行测试的 Nextjs 应用程序 我使用 npx eslintrc init 命令将 eslintrc 文件添加到我的项目中 每当我检查我的项目时 我都会收到以下错误
  • C# 和 VB.NET 中的转换之间的区别

    以下代码在 C 中运行良好 Int32 a b Int16 c a 0x7FFFFFFF b a 0xFFFF c Int16 b 但是这段代码崩溃并出现 OverflowExceptionVB NET Dim a b As Int32 D
  • 来自学习变量的预期张量流模型大小

    在训练用于图像分类任务的卷积神经网络时 我们通常希望我们的算法能够学习将给定图像转换为其正确标签的滤波器 和偏差 我有几个模型试图在模型大小 操作数量 准确性等方面进行比较 但是 从张量流输出的模型的大小 具体来说是模型 ckpt 数据存储
  • sql server 使用计算列

    我有一个这样的查询 select price1 price2 price3 as total price from prices 我如何使用计算列total price来计算其他总计 select price1 price2 price3
  • GoogleAppEngineLauncher 在哪里保存本地日志文件?

    GoogleAppEngineLauncher 可以在开发过程中在我的 Mac 上运行时显示我的应用程序的本地日志文件 但是 我无法更改那里的字体大小 所以我想使用tail命令自己查看日志文件 很遗憾 但我找不到日志文件 他们不在 var
  • 如何将角度项目设置为另一个角度项目的 package.json 中的依赖项

    我有三个不同的 Angular cli 项目 X Y Z 我想将 X 作为父项目 同时将 Y 和 Z 作为 npm 包依赖项添加到 X 这意味着 X package json 将包含 Y 和 Z 的依赖项 如下所示 dependencies
  • Row_Number 超过 其中 RowNumber 介于

    我尝试使用 row number 从表中选择某些行 但是sql会提示错误msg Invalid column name ROWNUMBERS 有人可以纠正我吗 SELECT ROW NUMBER OVER ORDER BY Price AS
  • SQL:如何在 orderby 中将 null 和空条目排序到前面?

    如果我的数据库中有以下条目 ID Name1 空 2 空字符串 3 阿尔法4 布拉沃5 查理 那么使用 ORDER BY 时如何将有名称的行排序到前面 如果我使用 ORDER BY Name 我会得到上面的列表 但我实际上想要 3 Alph
  • 解析注释行

    鉴于以下基本语法 我想了解如何处理注释行 缺少的是处理
  • 重定向后从 XHR 对象获取最终 url

    假设我使用 ajax 例如通过 jQuery 对实现 PRG 模式的 API 执行 POST 请求 因此它会重定向我 POST some api HTTP 1 1 303 See Other Location some other loca
  • 关于 stun 服务器的困惑

    我的要求是 我将打开一个UDP服务器监听X端口 本地机器 和machine public IP 可以发送UDP包给我 我的机器没有public IP 基本上我需要stun 我正在测试stuntman服务器 客户端项目 我在服务器 公共IP
  • x86_64 寄存器 rax/eax/ax/al 覆盖完整寄存器内容[重复]

    这个问题在这里已经有答案了 正如广泛宣传的那样 现代 x86 64 处理器具有 64 位寄存器 可以以向后兼容的方式用作 32 位寄存器 16 位寄存器甚至 8 位寄存器 例如 0x1122334455667788 rax 64 bits
  • 字符串不可变有什么好处?

    有一次我研究了字符串不可变的优点 因为它可以提高内存性能 有人可以向我解释一下吗 我在互联网上找不到它 不变性 对于字符串或其他类型 可以有很多优点 它使推理代码变得更加容易 因为您可以对变量和参数做出否则无法做出的假设 它简化了多线程编程
  • 使用 IDataReader 作为 IEnumerable 的最佳方法?

    我需要使用Linq on any 数据读取器像这样的实现 var c sqlDataReader AsEnumerable Count Example public abstract class Test public abstract S
  • 将数组拆分为唯一的对

    假设我从一个简单的数组开始 理论上可以是任意长度 ids array 1 2 3 4 将这个数组拆分为一组唯一对的数组的最佳解决方案是什么 例如 pair 0 array 1 2 pair 1 array 1 3 pair 2 array