알고리즘/기본코드

[배열] 배열 조작 연습

  • -

주어진 2차원 배열을 다양한 형태로 사용하는 것을 연습해보자.

 

기본 배열

연습에서 사용할 배열의 기본 형태는 아래와 같이 [4*5]의 char 배열이다.

[A, B, C, D, E]
[F, G, H, I, J]
[K, L, M, N, O]
[P, Q, R, S, T]

 

 

배열 탐색

 

행우선 탐색

기대출력결과: ABCDEFGHIJKLMNOPQRST

 

열우선 탐색

기대출력결과: AFKPBGLQCHMRDINSEJOT

 

지그재그탐색

기대출력결과: ABCDEJIHGFKLMNOTSRQP

 

달팽이탐색

기대출력결과: ABCDEJOTSRQPKFGHINML

 

 

방향 탐색

 

자음의 주변을 + 로 탐색하고 요소의 합을 출력하시오. ('A'=0, 'B'=1, ...)

기대출력결과: 498

 

모음의 주변을 X로 탐색하고 요소의 합을 출력하시오. ('A'=0, 'B'=1, ...)

기대출력결과: 72

 

'K'의 사방으로 영역 내에서 모음을 만나기 전까지 모든 자음들을 합해서 출력하세요.('A'=0, 'B'=1, ...)

기대출력결과: 56

 

모음에서 장기의 말(馬)이동 했을 때 만나는 지점의 합이 가장 큰 알파벳과 그때의 합은? 합이 같다면 큰 알파벳

기대출력결과: I : 48

 

방향 탐색을 이용해서 달팽이탐색을 수행하시오.

기대출력결과: ABCDEJOTSRQPKFGHINML

 

 

배열 변형

새로운 배열 transformed를 만들고 아래 지시사항에 따라 배열을 변형해보자.

 

상하반전

기대결과:

[P, Q, R, S, T]
[K, L, M, N, O]
[F, G, H, I, J]
[A, B, C, D, E]

 

좌우반전

기대 결과:

[E, D, C, B, A]
[J, I, H, G, F]
[O, N, M, L, K]
[T, S, R, Q, P]

 

전치행렬

기대 결과:

[A, F, K, P]
[B, G, L, Q]
[C, H, M, R]
[D, I, N, S]
[E, J, O, T]

 

 

시계방향 90도 회전

기대결과:

[P, K, F, A]
[Q, L, G, B]
[R, M, H, C]
[S, N, I, D]
[T, O, J, E]

 

 

반시계방향 90도회전

기대결과:

[E, J, O, T]
[D, I, N, S]
[C, H, M, R]
[B, G, L, Q]
[A, F, K, P]

회전 문제의 접근이 어렵다면 아래 그림에서 아이디어를 얻어보자.!

 

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.