▷ LeetCode 자료구조 이론 공부하며 번역 + 요약 정리
line
)보다 직사각형 그리드 (rectangular grid
) 로 놓인다고 할 수 있다.// "static void main" must be defined in a public class.
public class Main {
private static void printArray(int[][] a) {
for (int i = 0; i < a.length; ++i) {
System.out.println(a[i]);
}
for (int i = 0; i < a.length; ++i) {
for (int j = 0; a[i] != null && j < a[i].length; ++j) {
System.out.print(a[i][j] + " ");
}
System.out.println();
}
}
public static void main(String[] args) {
System.out.println("Example I:");
int[][] a = new int[2][5];
printArray(a);
System.out.println("Example II:");
int[][] b = new int[2][];
printArray(b);
System.out.println("Example III:");
b[0] = new int[3];
b[1] = new int[5];
printArray(b);
}
}
1. C++은 1차원 배열처럼 2차원 배열을 저장한다.
아래 그림은 M * N인 배열 A의 실제 구조를 보여준다.
따라서 만약 우리가 A를 M * N 요소들도 포함하는 1차원 배열로 정의한다면, 실제로 A[i][j]는 A[i * N + j]과 동일하다.
2. 자바에서 2차원 배열은 사실 M elements를 포함하는 1차원 배열이다. 그리고 elements 각각은 N integers의 배열이다.
아래 그림은 Java의 2차원 배열 A의 실제 구조를 보여준다.
a nested dynamic array
)이다. m x n의 매트릭스 mat가 있다. 이는 대각선 순서대로 매트릭스의 모든 요소들의 배열을 반환한다.
문제
https://leetcode.com/explore/learn/card/array-and-string/202/introduction-to-2d-array/1167/
회전하며 순서대로 메트릭스의 모든 요소들을 반환한다.
https://leetcode.com/explore/learn/card/array-and-string/202/introduction-to-2d-array/1168/
문제
https://leetcode.com/explore/learn/card/array-and-string/202/introduction-to-2d-array/1168/
풀이
https://github.com/effiRin/Algorithm/blob/main/com/yerin/LeetCode/ArrayAndString/SpiralMatrix.java
integer의 numRows가 있을 때, 파스칼의 삼각형의 첫 번째 줄을 반환하라.
파스칼의 삼각형에서 각 숫자는, 아래에 보여지는 것처럼 그 숫자의 바로 위에 있는 두 수의 합이다.
문제
https://leetcode.com/explore/learn/card/array-and-string/202/introduction-to-2d-array/1170/