我想得到一个包含等于的矩阵:例如,我有这个入口:[1,1,2,2,2,3,4,5,5,6]答案将是:[[1,1], [2,2,2],[3],[4],[5,5],[6]]
int[] arr = [1,1,2,2,2,3,4,5,5,6]
int resCopy = []
int resTotal = []
int visited = []
for(let i=0; i<arr.length; i++) {
resCopy.push(arr[i])
if(visited.indexOf(arr[i])==-1){
visited.push(arr[i])
resTotal.Add(resCopy)
resCopy=[]
}
}
我认为需要类似的减少功能在JavaScript相同
另一个例子:
1,2,2,2,1,1,3,4,5,5,6
first order 1,1,1,2,2,2,3,4,5,5,6
the answer [[1,1,1],[2,2,2],[3],[4],[5,5],[6]]
编辑:答案也将是字典
字典[<1,[1,1]>,<2,[2,2,2]>,3 <[3]>,<4,[4]>,<5,[5,5]>,< 6,[6]>]
我们可以使用Linq将类似的项目分组如下
int[] arr = { 1, 1, 2, 2, 2, 3, 4, 5, 5, 6 };
var arr1 = arr.GroupBy(s1 => s1).Select(s1 => s1.ToArray()).ToArray();
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句