我需要实现一个函数,该函数获取一个由n个元素和一个数字k组成的数组A作为输入,并返回一个包含大小为k的所有子集的数组(每个子集本身就是一个数组)。
定义函数的类型,并为函数实现至少3个测试(使用assert)。它应该是Javascript/Typescript和functional
例如:FunSubset([1,2,3],2)=
有什么想法吗?
在数组中循环,并为每个元素再次循环,以创建一个长度为k-1的切片,该切片与第一个循环的当前元素连接,然后将其推送到最后返回的临时数组中。
let myArr = [1, 2, 3, 4];
let k = 2;
function subSet(arr, k) {
let tmpArr = [];
for (var i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
let slice = arr.slice(j, j + k - 1);
slice.push(arr[i]);
tmpArr.push(slice.reverse());
}
}
return tmpArr;
}
let mySubSets = subSet(myArr, k);
console.log(JSON.stringify(mySubSets));
您可以为临时结果集使用带有另一个参数的生成器函数。
function* subsets(values, size, parts = []) {
var i;
size--;
for (i = 0; i < values.length; i++) {
if (size) {
yield* subsets(values.slice(i + 1), size, [...parts, values[i]]);
} else {
yield [...parts, values[i]];
}
}
}
console.log([...subsets([1, 2, 3], 2)]);
console.log([...subsets([1, 2, 3, 4, 5], 2)]);
css prettyprint-override">.as-console-wrapper { max-height: 100% !important; top: 0; }
问题内容: 这是我想要做的事情:-我需要一个函数,当将其作为参数传递时,ID(用于事物类别)将提供所有子类别,子子类别和子子子..etc 。-我在考虑使用递归函数,因为我不知道子类别及其子类别的数量,依此类推,这是到目前为止我一直在尝试的操作 如果我使用return而不是echo,我将不会得到相同的结果。我需要一些帮助以解决此问题或从头开始重写它 问题答案: 我很难弄清楚你的职能。我认为这会做您想
问题内容: 使用时,可以通过编程方式从共享库(仅Linux)中获取所有函数名称的列表吗? 我想要这样的东西: 示例库(mylib.so) 标头(.h): 来源(.c): 我知道的肮脏骇客:用途或实用工具 问题答案: 没有libc函数可以做到这一点。但是,您可以自己编写(或从readelf之类的工具复制/粘贴代码)。 在Linux上,返回结构的地址,该结构的成员名为,指向存储的共享库的基址(假设您的
问题内容: 我在纱线簇中运行我的spark应用程序。在我的代码中,我使用队列的可用数量核心在数据集中创建分区: 我的问题:如何通过编程方式而不是通过配置获取可用的队列核心数? 问题答案: 有多种方法可以从Spark获取执行程序的数量和集群中的核心数量。这是我过去使用的一些Scala实用程序代码。您应该可以轻松地使其适应Java。有两个关键思想: 工人人数是执行者人数减去一或。 每个工人的核心数可以
问题内容: 我必须动态获取ES6类的属性和功能。这有可能吗? 使用for … in循环,我只能循环访问类实例的属性: 输出: 问题答案: 此功能将获取所有功能。是否继承,是否可枚举。包括所有功能。 做测试 控制台输出: 注意 它不返回通过符号定义的函数。
我使用matplotlib在python中绘制直方图,方法是: 是否可以打印包含所有存储箱信息的数据框,如每个存储箱中的元素数量?
问题内容: 如何从包含证书和私钥的PEM文件中以编程方式获取KeyStore?我试图在HTTPS连接中向服务器提供客户端证书。我已经确认,如果我使用openssl和keytool来获取jks文件(该文件是动态加载的),则客户端证书可以使用。我什至可以通过动态读取p12(PKCS12)文件来使其工作。 我正在考虑使用BouncyCastle的PEMReader类,但无法克服一些错误。我正在使用-Dj