-
[9] 순환함수 ( 재귀함수 ) - JAVA 를 이용한 이미지 블럭의 사이즈 구하기IT&컴퓨터공학/자료구조&알고리즘 2020. 6. 22. 18:26
public class counting { static int alreadyCount =2; // alreadyCount : 이미 count 한 이미지 픽셀 static int size =8; // image 의 크기는 size X size static int cnt =0; // 카운트 수 ( 정답 ) public static void main(String[] args) { int[][] image = { // 0 은 빈칸, 1은 pixel {1,0,0,0,0,0,1,0}, {0,1,1,0,0,0,0,0}, {1,1,0,0,0,1,0,0}, {0,0,0,0,1,0,1,0}, {0,0,0,0,0,1,0,0}, {0,1,0,0,0,1,0,1}, {0,1,0,0,0,1,0,1}, {1,1,1,0,1,0,1,1}, }; System.out.println(findsize(image,7,7)); } public static int findsize(int[][] image,int x,int y) { if(x<0 || y<0|| x>=size || y>=size) return cnt; else if(image[x][y]==0) return cnt; // 빈칸이라면 그냥 size =0 else if(image[x][y]==1) { cnt++; image[x][y]=alreadyCount; // 카운트했으므로 alreadyCount로 바꾼다. for(int i=x-1;i<=x+1;i++)//-1 부터 1까지 { for(int j=y-1;j<=y+1;j++) //5부터 7까지 { cnt = findsize(image, i, j); } } } return cnt; } }
'IT&컴퓨터공학 > 자료구조&알고리즘' 카테고리의 다른 글
[12] 심화 정렬 ( SORT ) - Quick Sort (0) 2020.06.28 [11] 심화 정렬 ( SORT ) (0) 2020.06.25 [08] 순환함수 ( 재귀함수 ) - JAVA로 미로찾기 문제 구현 (0) 2020.06.22 [07] 순환 ( Recursion ) 이란? (0) 2020.06.19 [06]C언어 연결리스트 :: 이중연결리스트/이중연결리스트설명/이중연결리스트 초기화/삽입 (0) 2019.02.20 댓글