当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Ruby Array.repeated_permutation()用法及代码示例


Array.repeated_permutation() 方法

在本文中,我们将研究 Array.repeated_permutation() 方法。你们都必须认为该方法必须做一些与创建某些元素的排列相关的事情。让我们在其余内容中弄清楚这一点。我们将尝试借助语法和演示程序代码来理解它。

方法说明:

此方法是一个公共实例方法,是为 Ruby 库中的 Array 类定义的。此方法的用法方式是从 Array 实例中获取元素并根据方法中传递的数字进行重复排列,然后返回 Array 实例本身。此方法不保证产生的元素的顺序。使用块或数组调用此方法,并且在 .to_a 方法的帮助下将结果转换为 Array 实例。

如果您不提供任何块,则返回枚举数本身。

用法:

    array.repeated_permutation(n) { |c| block }

所需参数:

这种方法只需要一个参数。这个参数决定了 Array 实例元素可能的重复排列的数量。

范例1:

=begin
  Ruby program to demonstrate repeated_permutation method
=end

# array declaration
a = [1, 2]

print a.repeated_permutation(1).to_a  
puts ""

print a.repeated_permutation(2).to_a
puts ""  

print a.repeated_permutation(3).to_a

输出

[[1], [2]]
[[1, 1], [1, 2], [2, 1], [2, 2]]
[[1, 1, 1], [1, 1, 2], [1, 2, 1], [1, 2, 2], [2, 1, 1], [2, 1, 2], [2, 2, 1], [2, 2, 2]]

说明:

在上面的代码中,您可以观察到该方法用于创建数组元素的重复排列。根据方法内部传递的参数创建重复排列。您可以通过将 Array 的长度作为基数并将作为参数传递的整数作为幂来预测可以生成的排列数。在上面的代码中,可以观察到,当传递整数 3 时,创建了 8 个排列。

范例2:

=begin
  Ruby program to demonstrate repeated_permutation method
=end

# array declaration
a = ["Kamiara","Arshi"]

print a.repeated_permutation(1).to_a  
puts ""

print a.repeated_permutation(2).to_a
puts ""  

print a.repeated_permutation(3).to_a

输出

[["Kamiara"], ["Arshi"]]
[["Kamiara", "Kamiara"], ["Kamiara", "Arshi"], ["Arshi", "Kamiara"], ["Arshi", "Arshi"]]
[["Kamiara", "Kamiara", "Kamiara"], ["Kamiara", "Kamiara", "Arshi"], ["Kamiara", "Arshi", "Kamiara"], ["Kamiara", "Arshi", "Arshi"], ["Arshi", "Kamiara", "Kamiara"], ["Arshi", "Kamiara", "Arshi"], ["Arshi", "Arshi", "Kamiara"], ["Arshi", "Arshi", "Arshi"]]

说明:

在上面的示例中,您可以观察到此方法也适用于 String Array 实例。此方法在进行重复排列后返回元素。您可以通过将 Array 的长度作为基数和作为参数传递的整数作为幂来预测可以生成的排列数。在上面的代码中,可以观察到,当传递整数 3 时,创建了 8 个排列。



相关用法


注:本文由纯净天空筛选整理自 Array.repeated_permutation() Method with Example in Ruby。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。