java
-
1. 얕은 복사? 깊은 복사? 얕은 복사 : 본래 배열의 주소값을 가져옴 깊은 복사 : 본래 배열의 값(value)를 그대로 가져옴! 때문에 얕은 복사를 하면 복사하고 난 배열에서 값을 수정하면 본래의 배열도 수정됩니다! 반대로 깊은 복사는 전혀 별개의 배열이 새로 생기는 것이기 때문에 아무리 수정해도 본래 배열에는 영향이 없습니다. 간단히 그림으로 표현하면 아래와 같습니다. 얕은 복사와 깊은 복사 방식은 1차원이냐, 2차원이냐에 따라 또 나뉩니다. 2. 1차원 배열의 복사 - 원래 배열의 주솟값을 가져옴 int[] A = {1,2,3,4,5}; int[] B = A; 1. 직접 배열을 만들어 값을 할당 2. clone() 1. 직접 배열을 만들어 값을 할당하는 방식 int[] A = {1,2,3,4,5..
[JAVA] 얕은 복사 vs 깊은 복사1. 얕은 복사? 깊은 복사? 얕은 복사 : 본래 배열의 주소값을 가져옴 깊은 복사 : 본래 배열의 값(value)를 그대로 가져옴! 때문에 얕은 복사를 하면 복사하고 난 배열에서 값을 수정하면 본래의 배열도 수정됩니다! 반대로 깊은 복사는 전혀 별개의 배열이 새로 생기는 것이기 때문에 아무리 수정해도 본래 배열에는 영향이 없습니다. 간단히 그림으로 표현하면 아래와 같습니다. 얕은 복사와 깊은 복사 방식은 1차원이냐, 2차원이냐에 따라 또 나뉩니다. 2. 1차원 배열의 복사 - 원래 배열의 주솟값을 가져옴 int[] A = {1,2,3,4,5}; int[] B = A; 1. 직접 배열을 만들어 값을 할당 2. clone() 1. 직접 배열을 만들어 값을 할당하는 방식 int[] A = {1,2,3,4,5..
2022.10.05 -
1. 문제 접근 1)W으로 시작하는 체스판, B로 시작하는 체스판 두 종류가 있기 때문에 두 종류를 기준으로 얼마나 뒤집어야하는지 확인해야겠다 2) 그런데 결국 두 종류는 서로 반대되기 때문에, 한 종류만 우선 비교해보고 다른 한종류는 전체 뒤집는 경우의 수에서 빼면 되겠다. 3) 전체 경우의 수는 64번! 2. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.StringTokenizer; public class Silver4_1018_체스판다시칠하기 { public static void main(String..
백준 1018 - 체스판 다시 칠하기1. 문제 접근 1)W으로 시작하는 체스판, B로 시작하는 체스판 두 종류가 있기 때문에 두 종류를 기준으로 얼마나 뒤집어야하는지 확인해야겠다 2) 그런데 결국 두 종류는 서로 반대되기 때문에, 한 종류만 우선 비교해보고 다른 한종류는 전체 뒤집는 경우의 수에서 빼면 되겠다. 3) 전체 경우의 수는 64번! 2. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.StringTokenizer; public class Silver4_1018_체스판다시칠하기 { public static void main(String..
2022.08.15 -
1. 문제 2. 접근법 다 더해서 겹치는 범위를 빼줘도 좋지만 그렇게 하면 겹치는 범위를 찾기가 어려울 것 같다;; 그래서 흰 도화지를 boolean 2차원 배열로 만들고, 검은색 색종이 범위를 true로 표현하기로 함 중복을 줄이기 위해 true로 바꿔주면서 동시에 넓이도 같이 합해줌 3. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Boj_2563_색종이 { public static void main(String[] args) throws NumberFormatException, IOExcep..
백준 브론즈1 색종이 - JAVA1. 문제 2. 접근법 다 더해서 겹치는 범위를 빼줘도 좋지만 그렇게 하면 겹치는 범위를 찾기가 어려울 것 같다;; 그래서 흰 도화지를 boolean 2차원 배열로 만들고, 검은색 색종이 범위를 true로 표현하기로 함 중복을 줄이기 위해 true로 바꿔주면서 동시에 넓이도 같이 합해줌 3. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Boj_2563_색종이 { public static void main(String[] args) throws NumberFormatException, IOExcep..
2022.08.09