【问题标题】:How to generate permutation of string, but without repeats and different length?如何生成字符串的排列,但没有重复和不同的长度?
【发布时间】:2019-02-25 14:40:52
【问题描述】:

我正在寻找一种 php 算法或只是伪代码来获取字符串的所有排列,但没有重复字符,并且生成的字符串的长度可以从 1 变化到输入的最大长度。示例:

输入:1 2 3

可能的组合:

1

1 2 /(与2 1相同,所以不能计算)

1 3

1 2 3

2

2 3

3

【问题讨论】:

  • 还有……你试过什么?

标签: php combinations permutation


【解决方案1】:

给你:

function pc_array_power_set($array) {
    // initialize by adding the empty set
    $results = array(array());

    foreach ($array as $element)
        foreach ($results as $combination)
            array_push($results, array_merge(array($element), $combination));

   return $results;

}

From PHP Cookbook

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-03
    • 1970-01-01
    • 2019-05-19
    • 1970-01-01
    • 2017-11-12
    • 1970-01-01
    • 1970-01-01
    • 2015-09-13
    相关资源
    最近更新 更多