티스토리 뷰

파이썬

파이썬 알고리즘 - 구현

loooopy 2023. 1. 1. 02:30
반응형

구현(Implementation)

 

구현이란 알고리즘을 소스코드로 바꾸는 과정이다.

구현 유형의 문제는 풀이를 떠올리는 것은 쉽지만 소스코드로 옮기기 어려운 문제를 지칭한다.

 

구현 문제의 유형은 다음과 같다.

- 알고리즘은 간단하지만 코드가 긴 문제

- 실수 연산을 통해 특정 소수점까지 출력해야 하는 문제

- 문자열을 특정 조건에 맞게 처리해야 하는 문제

- 적절한 라이브러리를 활용해야 하는 문제

 

구현 예제 - 상하좌우 이동

자유롭게 이동할 수 있는 n x n의 공간이 있다.

이 공간은 (1, 1)에서 (n, n)으로 표현할 수 있고, 나의 현재 위치는 (1, 1)이다. 

현재 위치에서 임의의 특정 방향으로 이동을 하였을 때 나의 최종 도착 지점의 좌표를 구해보자.

(n x n의 공간을 벗어날 수 없다.) 

 

>> 구현 문제의 경우 직관적으로 코드를 작성했을 때 코드가 상당히 길어질 수 있다.

      따라서 현재 위치를 x, y라고 지정하고 이동하게 될 거리를 dx, dy라고 설정하여 접근하였다.

      입력된 이동이 상하좌우 중 무엇인지 파악하고 이에 맞춰 x, y에 dx, dy를 더해주며 현재 위치를 재정의하였다.

      또한 공간의 범위를 벗어날 경우는 벗어나지 않게 22행처럼 예외 처리를 해주었다.

      

'파이썬' 카테고리의 다른 글

자료구조 - 큐 (Queue)  (0) 2023.01.05
자료구조 - 스택(Stack)  (0) 2023.01.03
그리디 알고리즘 (Greedy Algorithm)  (0) 2022.12.29
파이썬 리스트(List)  (0) 2022.12.27
복잡도(Complexity)와 빅오 표기법(Big-O Notation)  (0) 2022.12.27
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함