알고리즘은 본질적으로 데이터를 다루는 방법에 대한 것입니다. 데이터가 구조적으로 조직화되어 다루는 방법까지 포함하게 되면 그것을 자료구조(Data Structure)라고 합니다. 자료구조가 자료를 다루는 방법에 대한 것이라고 본다면 알고리즘의 부분 집합이라 할 수 있습니다. 하지만 그 중요성은 매우 큽니다.
자료구조 중에서 가장 단순한 형태 중 하나는 배열(Array)입니다. 배열은 동일한 타입의 데이터들이 연속으로 배치된 형태입니다. 동일한 데이터 타입은 간단한 산수로 어드레싱을 할 수 있음을 의미해서 랜덤억세스에 강점이 있는 자료구조입니다.
가장 단순한 자료구조인 배열에 대한 내용을 살펴보고, 배열 자료구조를 이용하여 미로찾기 알고리즘을 구현해 보도록 합니다.
강의 파일
강의 동영상
4.0 배열과 미로 탐색 - 시작 : 랜덤 억세스가 가능한 기본 자료구조인 배열에 대해 알아보고, 이를 응용하여 미로 탐색 문제를 풀어 봅니다.
4.1 배열의 정의 : 배열이란 무엇이고, 어떤 특징이 있는지 알아봅니다.
4.2 다차원 배열 : 기본적인 일차원 배열을 확장하여, 다차원 배열의 개념과 사용법을 알아 봅니다.
4.3 미로의 표현과 그리기 : 현실의 미로를 어떻게 가상의 데이터로 표현하는지 알아보고, 이를 이용하여 미로를 그래픽으로 표현하는 방법을 알아 봅니다.
4.4 미로 탐색 알고리즘 - 우선법 : 배열로 모델링된 미로에서 빠져나오는 길을 찾는 알고리즘을 알아보고 구현해 봅니다.
4.5 최단 경로 찾기 : 우선법으로 찾은 경로는 최단 경로가 아닙니다. 간단한 직관으로 최단 경로를 구하는 방법을 알아 봅니다.
4.9 배열과 미로 탐색 - 결론 : 4장에서 배웠던 배열의 의미와 사용법을 정리합니다.
관련글 |
- C++로 배우는 알고리즘
- 3장 : String 클래스 만들기
- 5장 : 연결 리스트
피드 구독하기:
댓글 (Atom)
인기글
-
언젠가부터 내 스마트폰에서 용량이 부족 하다면서 계속 알림이 떴다. 저가폰이라 내부저장소가 16GB 밖에 되지 않았지만, 추가로 마이크로SD 카드 16GB를 달았는데도 그렇다. 안드로이드가 앱을 설치하고 필요한 데이터를 저장하는 곳은 특별히 지정하...
-
사람들은 메이드인 차이나라 그러면 업신여기는 경향이 있지만, 요즘 웬만한 제조물품들은 중국도 꽤나 잘 만든다. 아니 샤오미나 팍스콘을 보면 꽤나 잘 만드는 정도가 아니라 아주 잘 만든다. 중국이 세계의 공장이 되면서 미국도 그렇고, 우리나라도 그렇...
-
나는 무려 10년이 된 Java 프로젝트를 여러개 관리하고 있는데, Netbeans와 Ant 기반의 개발/빌드 환경을 사용한다. Netbeans는 Sun이 Oracle로 넘어간 뒤에 Apache 재단으로 넘어가면서 개발 동력이 많이 떨어져 있다...
댓글 없음:
댓글 쓰기