当前位置: 首页 > 面试题库 >

写一个方法,计算有N个数(可重复),分别放到M个位置中,有多少种排列?

宗政深
2023-03-14
本文向大家介绍写一个方法,计算有N个数(可重复),分别放到M个位置中,有多少种排列?相关面试题,主要包含被问及写一个方法,计算有N个数(可重复),分别放到M个位置中,有多少种排列?时的应答技巧和注意事项,需要的朋友参考一下
var combine = function(arr, k) {
    var result = {};
    var subresult = [];
    var n = arr.length
    var count = 0
    function combineSub(subresult){
        if(subresult.length == k){
            var subres = subresult.slice(0)
            var sub = []
            subres.forEach(item=>sub.push(arr[item]))
            var res = sub.join()
            if(result[res] == undefined){
                result[res] = sub
                count++
            }
            return;
        }
        for(var i= 0;i<n;i++){
           if(subresult.indexOf(i) ===-1){
              subresult.push(i);
              combineSub(subresult);
              subresult.pop();     
           }           
        }   
    }
    combineSub(subresult);
    return count;
}
combine([1,2,2],1)
 类似资料:
  • 可能重复:数组值计数javascript 我有一个数组,其中包含几个重复项,我试图实现的是计算每个唯一字符串在这个数组中有多少重复项。 数组看起来像这样 因此我想做这样的事情 但我不确定该如何编写代码。我在想,用每个唯一的字符串创建一个对象,然后在原始数组中循环,将每个字符串与其对象匹配,并将其数字增加1,然后在对象上循环,以查看哪些单词具有最多的重复项。。。 但这似乎是一种过于复杂的方法。

  • 现在我有了一个,它表示在特定时间板上当前的所有块。 我需要数一下一种类型有多少件,比如白车,黑皇后等,但正常的做法会变得太长,而且看起来很难看。我就是这么做的... 必须有一种更优雅的方法来实现这一点,它需要更少的代码行。我的意思是如果有超过6种类型的碎片和2种类型的颜色。我不能一直像这样给switch语句添加大小写,对吧?但我想不出怎样才能让它更优雅。

  • 问题内容: 我正在考虑构建一个非常大的Java类,Java类可以具有的方法数量是否有限制?它可以用于数百万种方法吗? 更新:是的,目的是制作“神”类。 问题答案: 根据Java类文件规范,限制为 65535 : 4.10 Java虚拟机的局限性 文件格式隐含了Java虚拟机的以下限制: 一个类或接口可以声明的方法的数量由该结构项的大小限制为65535 (第4.1节)。请注意,结构项的值不包括从超类

  • 在调试和故障处理的时候,我们通常有必要知道 RDD 有多少个分区。这里有几个方法可以找到这些信息: 使用 UI 查看在分区上执行的任务数 当 stage 执行的时候,你可以在 Spark UI 上看到这个 stage 上的分区数。 下面的例子中的简单任务在 4 个分区上创建了共 100 个元素的 RDD ,然后在这些元素被收集到 driver 之前分发一个 map 任务: scala> val s

  • 我有一个文档,它包含一个数组,如下所示。这是第一份文件。 我需要在聚合框架中用nestedData数组中的_id查找(连接)到另一个集合。

  • 我正在从事一个基于Laravel5.7的项目,在这个项目中,Elount被用作ORM。 我需要在我的数据库上执行一个原始SQL语句。但是,我的查询在多个地方使用相同的参数。 这里有一个查询示例“这不是我真正的查询,更多的是为了解释问题。我的实际查询非常复杂,多次重用相同的参数” 我期待着下面的工作 但这给了我以下错误 SQLSTATE[HY093]:参数编号无效 如何在同一查询中使用Eloquen