-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
7주차 학습 성찰 #65
Comments
정렬 이론은 원소들을 일정한 기준에 따라 순서대로 나열하는 알고리즘을 다루며, 데이터의 구조화, 검색 및 탐색 효율을 향상시키는 데 중요한 개념입니다.다양한 정렬 알고리즘이 존재하며, 대표적으로 버블 정렬, 선택 정렬, 삽입 정렬, 퀵 정렬, 병합 정렬, 힙 정렬 등이 있으며, 각각의 알고리즘은 시간 복잡도와 안정성 등의 특성을 가지고 있습니다.정렬 이론은 컴퓨터 과학뿐만 아니라 데이터베이스, 알고리즘 설계, 정보 검색 등 다양한 분야에서 활용되며, 효율적인 데이터 처리와 분석을 위한 핵심 개념으로서 중요한 역할을 하므로 의미있는 시간이였습니다. |
정렬은 가장 기초적인 알고리즘으로 정렬 그 자체가 문제로 출제되는 경향은 적다. 그러나 많은 문제에서 녹아 들어있기 때문에 기본적으로 어떻게 작동하는지, 시간복잡도가 어떻게 되는지 알고 있어야 한다. 평소 c++ stl에 내장되어있는 정렬 알고리즘을 사용했는데 오랜만에 정렬을 손으로 코딩해볼 수 있었다. |
정렬 문제를 풀기 위해서는 다양한 정렬 알고리즘에 대한 이해가 필요했다. 선택 정렬, 삽입 정렬, 퀵 정렬, 병합 정렬, 힙 정렬 등 다양한 정렬 알고리즘이 존재하며, 각 알고리즘의 특징과 성능을 알고 문제에 적절한 알고리즘을 선택해야 했다. 정렬 문제를 풀면서 문제 해결 능력이 향상되다. 데이터의 특성을 파악하고 적절한 알고리즘을 선택하는 능력, 정렬 알고리즘의 구현과 최적화하는 능력이 향상되었다. 이러한 능력은 정렬 문제뿐만 아니라 다른 문제들을 해결하는 데에도 큰 도움이 될 것 같다. |
가장 기초적인 정렬 문제들로, 이번 주차는 쉬어가는 느낌으로 풀어보았다. 시험기간이기도 해서 빠르게 파이썬에 기본 내장되어있는 sort 함수를 이용해서 풀었는데, 다른 팀원은 정렬 기능을 손으로 코딩해보면서 하는 모습을 보면서 새롭게 자극도 받았다. 이제 벌써 여섯번째 주차로 거의 막바지인데, 여러 주제들을 한 주차씩 배워보면서 스터디 하길 잘했다는 생각이 들었다. |
정렬에는 여러 종류가 있지만 이번 주차에서는 쉬운 알고리즘을 사용하여 어렵지 않게 문제를 풀 수 있었다. 자료구조 시간에 배웠던 개념들을 한 번 더 상기시키는 계기가 되었고 라이브러리만 사용하지 않고 오랜만에 직접 구현하여 재밌었다. 만약 이 학습이 없었다면 직접 풀어볼 일은 없었을 것 같다. |
정렬은 그리디와 자주 사용되는 알고리즘으로 매우 중요하다. 주어진 문제를 어떤식으로 정렬하는지 파악하는 것이 가장 핵심이다. 클래스를 따로 만들어 정렬하는 방식또한 자주 사용된다. Java에서는 Comparable과 Comparator 인터페이스를 구현하여 클래스를 정렬할 수 있다. 따라서 문제에 맞게 클래스를 설계하여 정렬을 해주면 문제가 쉽게 해결되는 경우가 많다. 이번 문제들을 통해 정렬을 활용하는 방법에 대해 익혀볼 수 있었다. 또한, 스터디를 통해 팀원들과 문제에 대해 다양한 관점을 공유해보며 유익한 시간을 보냈다. |
No description provided.
The text was updated successfully, but these errors were encountered: