LINQ를 사용하여 다양한 조합을 생성합니다
배열을 제공합니다. Array1 및 Array2. 첫 번째 배열에서 요소를 제 2 배열의 해당 요소와 압축하여 모든 요소의 가능한 조합을 생성합니다. 예를 들어, 주어진 :
<: :> array1 : {a, b, c}
<: :> 배열 2 : {3, 2, 4}
우리는 다음 조합을 생성하려고합니다 :
이 과정은이 두 어레이의 시퀀스 조각을 얻어야합니다. LINQ는이 데카르트를 생성하는 직접적인 방법을 제공합니다.
Descartes를 만듭니다
이 방법은 시퀀스의 시퀀스를 얻고 골재 연산자를 사용하여 데카르트 축적을 축적합니다. Cumulator로서 빈 시퀀스로 시작하여 입력 순서에서 각 시퀀스와 반복적으로 결합합니다. 각각의 조합에 대해, 그것은 Cumulator의 요소와 현재 순서의 요소를 압축하여 Hydrochllar 축적을 생성합니다.
압축 데이터
일단 데카르트가 축적되면 첫 번째 배열의 요소와 두 번째 배열의 두 번째 배열에서 해당 요소를 압축 할 수 있습니다.
-
CartesianProduct 방법을 사용하면 여러 서열의 데카르트를 쉽게 생성 할 수 있습니다. 두 번째 배열에서 각 요소에 대한 정수 범위를 생성하여 시퀀스 시퀀스를 만듭니다. 그런 다음 첫 번째 배열로 이러한 범위의 데카르트 범위를 압축하여 필요한 조합을 생성합니다.
마지막으로, 우리는 시퀀스 시퀀스의 시퀀스를 가로 지르고 각 줄을 인쇄 할 수 있습니다.
-
이 코드는 문자열로 조합을 생성하여 콘솔에 인쇄합니다.
위 내용은 LINQ의 직교 제품을 사용하여 가능한 모든 배열 요소 조합을 생성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!