Search

배열7_문제02_배열비교

대분류
STEP05 배열
소분류
배열7_문제

영상

문제

package 배열7_문제; /* [문제] arr배열과 input배열의 값을 비교한다. 서로 같은 값이 있는지 체크한다. input과 arr이 서로 같은 값이 있는 arr의 인덱스를 b배열에 저장한다. 반면 input배열의 값이 arr에 없으면 -1을 저장한다. [정답] b = {2, 3, -1, 0, -1} */ public class 배열7_문제02_배열비교_문제 { public static void main(String[] args) { int[] input = {30, 40, 1, 10, 2}; int[] arr = {10, 20, 30, 40}; int[] b = {-1, -1, -1, -1, -1}; } }
Java
복사

해설

package 배열7_문제; import java.util.Arrays; /* [문제] arr배열과 input배열의 값을 비교한다. 서로 같은 값이 있는지 체크한다. input과 arr이 서로 같은 값이 있는 arr의 인덱스를 b배열에 저장한다. 반면 input배열의 값이 arr에 없으면 -1을 저장한다. [정답] b = {2, 3, -1, 0, -1} */ public class 배열7_문제02_배열비교_정답 { public static void main(String[] args) { int[] input = {30, 40, 1, 10, 2}; int[] arr = {10, 20, 30, 40}; int[] b = {-1, -1, -1, -1, -1}; /* i = 0 check = -1 j = 0 30 == arr[0] false j = 1 30 == arr[1] false j = 2 30 == arr[2] true check = 2 break b[0] = 2 i = 1 check = -1 j = 0 40 == arr[0] false j = 1 40 == arr[1] false j = 2 40 == arr[2] false j = 3 40 == arr[3] true check = 3 b[1] = 3 ... */ for(int i=0; i<input.length; i++) { int check = -1; for(int j=0; j<arr.length; j++) { if(input[i] == arr[j]) { check = j; break; } } b[i] = check; } System.out.println(Arrays.toString(b)); } }
Java
복사