2022. 1D 배열을 2D 배열로 변환
난이도: 쉬움
주제: 어레이, 매트릭스, 시뮬레이션
인덱스가 0인 1차원(1D) 정수 배열 원본과 두 개의 정수 m과 n이 주어졌습니다. 귀하는 원본의 모든 요소를 사용하여 m개의 행과 n개의 열로 구성된 2차원(2D) 배열을 생성해야 합니다.
원본의 인덱스 0부터 n - 1(포함)의 요소는 구성된 2D 배열의 첫 번째 행을 형성해야 하며, 인덱스 n에서 2 * n - 1(포함)의 요소는 생성된 2D 배열의 첫 번째 행을 형성해야 합니다. )은 구성된 2D 배열의 두 번째 행을 형성해야 합니다.
위 절차에 따라 구성된 m x n 2D 배열을 반환하거나, 불가능한 경우 빈 2D 배열을 반환합니다.
예 1:
예 2:
예 3:
제약조건:
힌트:
해결책:
다음 단계를 따라야 합니다.
변환이 가능한지 확인: 1D 배열에서 2D 배열로의 변환은 1D 배열(original.length)의 총 요소 수가 다음과 정확히 같은 경우에만 가능합니다. m * n, 여기서 m은 행 수이고 n은 열 수입니다. 이 조건이 충족되지 않으면 빈 배열을 반환합니다.
2D 배열 만들기: 변환이 가능한 경우 m행과 n열로 2D 배열을 초기화하고 1D 배열을 반복하고 2D 배열 행을 채워서 채웁니다. 행별로.
이 솔루션을 PHP로 구현해 보겠습니다: 2022. 1D 배열을 2D 배열로 변환
<?php /** * @param Integer[] $original * @param Integer $m * @param Integer $n * @return Integer[][] */ function construct2DArray($original, $m, $n) { ... ... ... /** * go to ./solution.php */ } // Example usage: //Example 1 $original = array(1, 2, 3, 4); $m = 2; $n = 2; print_r(construct2DArray($original, $m, $n)); //Output: [[1,2],[3,4]] //Example 2 $original = array(1, 2, 3); $m = 1; $n = 3; print_r(construct2DArray($original, $m, $n)); //Output: [[1,2,3]] //Example 3 $original = array(1, 2); $m = 1; $n = 1; print_r(construct2DArray($original, $m, $n)); //Output: [] ?>
입력 유효성 검사:
2D 배열 구성:
제공된 예:
$original = array(1, 2, 3, 4); $m = 2; $n = 2; print_r(construct2DArray($original, $m, $n));
출력은 다음과 같습니다.
Array ( [0] => Array ( [0] => 1 [1] => 2 ) [1] => Array ( [0] => 3 [1] => 4 ) )
이러한 접근 방식을 사용하면 1D 배열이 원하는 2D 배열로 올바르게 변환되고, 변환이 가능한지 확인하여 엣지 케이스를 효율적으로 처리할 수 있습니다.
연락처 링크
이 시리즈가 도움이 되었다면 GitHub에서 저장소에 별표를 표시하거나 즐겨찾는 소셜 네트워크에서 게시물을 공유해 보세요. 여러분의 지원은 저에게 큰 의미가 될 것입니다!
이런 유용한 콘텐츠를 더 원하시면 저를 팔로우해주세요.
위 내용은 배열을 배열로 변환의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!