2017-12-01 24 views
0

C#에서 int 목록이 있으므로 고유 한 요소로 그룹화하려고합니다.C#에서 n 요소의 고유 항목 그룹을 만드는 방법

List<int> items = new List<int>() { 1, 3, 1, 2 }; 

4 개 요소 1,3,1,2가 있음을 알 수 있습니다. 내가 예를

[1,3],[1,2] 
[1,1],[3,2] 

당신이 볼 수 있듯이을 위해 2의 크기 그룹화하려는, 이러한 독특한 그룹을합니다. C#에서 이것을 달성하는 방법을 잘 모르겠습니다. 이 경우 2로 그룹화해야하지만 다른 숫자 (N)로 그룹화해야 할 수도 있습니다.

이 목록의 5 월

+1

반복하지 않고 조합하고 싶습니까? –

+0

'[2,3]'은 어떨까요? – DavidG

+0

@DavidG [2,3]을 그룹화하면 [1,1] 만 남아 있습니다. 그룹에서 처음 오는 것은 중요하지 않으므로 [2,3]은 [3,2] – Adrian

답변

0

4. 그냥이 밖으로 시도보다 더 많은 항목이 들어, 나는 나열하는 결과를로드 한.

List<int> numbers = new List<int>() { 1,2,3,4,5,6}; 
      List<int[]> numArrays = new List<int[]>(); 

      var numArray = numbers.ToArray(); 
      for(int i = 0; i < numArray.Length; i++) 
      { 
       for(int j = i ; j < numArray.Length; j++) 
       { 
        int[] nums = new int[2]; 
        nums[0] = numArray[i]; 
        nums[1] = numArray[j]; 
        numArrays.Add(nums); 
       } 
      } 
+0

을 확인하고 있습니다. (예 : 0.OrderBy (t => t), y.OrderBy (t => t)); 목록에서 하위 배열은 하나의 T (항목 당 2 개 요소)로 3 개가됩니다. 확인하십시오. – Adrian