给定 N
个元素的数组 A = [a1, a2, ..., aN]
。切片是相邻元素的任意序列。喜欢
[a1], [a1,a2], [a1,a2,a3], ... , [a1, a2,...,aN],[a2,a3], [a3,a4], ....
如何计算数组所有切片的计数? 是否有获取数量的公式?
最佳答案
由于切片由开始和结束索引确定,这与询问可以从 n+1 个元素中挑选出多少个不同的对(计算第 0 个元素相同) sup> 和 nth 索引),其中对的顺序并不重要。
这就是计数 combinations ,“n+1 选择 2” 的公式为:n(n+1)/2。
注意:这不计算空切片。如果那些也被计算在内,并且如果它们的索引不同,空切片应该单独计算,那么这是计算多组 2(因为开始/结束索引可以相等)。然后你应该在上面的结果中添加一个额外的 n+1。
关于algorithm - 如何计算由N个元素组成的数组的所有切片的数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58354211/