美文网首页重新撸码
从一个数组中取任意几位排列组合

从一个数组中取任意几位排列组合

作者: 大黄蜂阿天 | 来源:发表于2022-11-02 16:11 被阅读0次
        $arr = [1, 2, 3, 4, 5, 6];
        $finalRes = [];
        vs($arr, 0, [], $finalRes, 4);
        foreach($finalRes as $v){
            echo implode("", $v)."\r\n";
        }

        function vs($arr, $i, $res = [], &$finalRes = [], $num)
        {
            if (count($res) == $num) {
                $finalRes[] = $res;
                return;
            }
            if ($i == count($arr)) {
                return;
            }
            $res_  = $res;
            $res[] = $arr[$i];
            vs($arr, $i + 1, $res, $finalRes, $num);
            vs($arr, $i + 1, $res_, $finalRes, $num);
        }

相关文章

  • 从一个数组中取任意几位排列组合

  • 46. Permutations 全排列

    题目 给定一个不重复数组 nums ,返回所有可能的排列组合。可以以任意顺序返回。 解析 求一个数组的全排列,即是...

  • 排列组合建立数学模型

    排列组合的定义 排列的定义:从n个不同元素中,任意取m个元素,m≤n且m和n都是自然数,按照一定顺序排成一列,叫做...

  • 最小差 (lintcode:the-smallest-diffe

    给定两个整数数组(第一个是数组 A,第二个是数组 B),在数组 A 中取 A[i],数组 B 中取 B[j],A[...

  • TODO:排列组合问题:n个数中取m个

    TODO:排列组合问题:n个数中取m个 排列组合是组合学最基本的概念。所谓排列,就是指从给定个数的元素中取出指定个...

  • LintCode 387 [The Smallest Diffe

    原题 给定两个整数数组(第一个是数组 A,第二个是数组 B),在数组 A 中取 A[i],数组 B 中取 B[j]...

  • JS 函数封装

    返回数组或对象的长度 返回数组中的非假值组成一个新数组 返回数组中任意一个元素 数组去重复

  • 组合游戏略述——浅谈SG游戏的若干拓展及变形

    Anti-SG 游戏桌子上有 N 堆石子,游戏者轮流取石子。每次只能从一堆中取出任意数目的石子,但不能不取。...

  • Velocity总结

    正则校验 . 点代表任意字符 星代表任意多个 重复出现任意多个,但要至少出现一次 取整 日期格式化 输出数组下标

  • 06-JS基础-数组

    数组(Array) 数组是一个用来存储数据的对象,数组中的元素可以是任意数据类型。 创建数组 向数组中添加元素 语...

网友评论

    本文标题:从一个数组中取任意几位排列组合

    本文链接:https://www.haomeiwen.com/subject/kmmjtdtx.html