목록프로그래밍 기초/Data structure & Algorithm (20)
Groo
안녕하세요, 오늘은 새로운 자료구조인 스택에 대해서 알아보려고 합니다. 스택의 기본 개념과 내용을 알아본 후 스택을 활용한 간단한 프로그램 또한 구현을 해볼 것입니다. 🤷♂️ 스택은 무엇인가요? Stack이라는 단어의 뜻은 채우다는 의미입니다. 단어의 뜻과 같이 스택은 데이터를 일시적으로 저장하기 위해 사용하는 자료구조입니다. 스택은 다른 자료구조들과 달리 데이터의 입력과 출력 순서가 후입 선출이라는 것이 중요합니다. 후입 선출의 의미는 가장 나중에 넣은 데이터를 가장 먼저 꺼내는 것을 의미합니다. 그럼 아래의 표를 통해 스택에 대한 간단한 개념 정리를 해보도록 하겠습니다. 구성 모습 바닥 (Bottom) / 꼭대기 (Top) 개념 및 의미 데이터를 일시적으로 저장하기 위해 사용하는 자료구조 데이터 입..
안녕하세요, 오늘은 검색 알고리즘의 두 번째 시간으로 이진 검색에 대해 알아볼 것입니다. 또한 저번에 배운 검색 알고리즘의 선형 검색과 이진 검색의 시간 복잡도에 대해서도 공부할 것입니다. 🤦♂️ 이진 검색은 또한 무엇인가? 검색 알고리즘에는 대표적으로 선형 검색과 이진 검색 두 가지가 존재합니다. 저번에 저희는 선형 검색에 대해서 알아보았습니다. 그럼 이번에 알아볼 이진 검색은 무엇일까요? 이진 검색은 배열의 각 요소가 오름차순 또는 내림차순으로 정렬된 배열에서 검색하는 알고리즘입니다. 이진 검색은 저번 선형 검색보다 좀 더 빠르게 값을 검색할 수 있다는 장점이 존재합니다. 아래의 그림을 보겠습니다. 위의 배열은 오름차순으로 구성되어있는 int 자료형의 배열입니다. 저희는 이 위의 배열의 요 솟값 3..
안녕하세요, 오늘은 검색 알고리즘의 선형 검색과 보초 법에 대해서 알아보려고 합니다. 검색 알고리즘에는 대표적으로 선형 검색과 이진 검색으로 크게 두 가지로 분류를 할 수 있습니다. 🔎 검색 알고리즘은 무엇인가? 검색 알고리즘의 의미는 데이터베이스 내 수집 된 여러 아이템 중에서 특정 성질 혹은 키 값을 구성한 데이터를 찾아내는 알고리즘입니다. 대표적으로 검색 알고리즘은 배열, 선형 리스트, 이진 검색 트리 등 앞으로 배울 다양한 부분에서 검색 알고리즘을 활용합니다. 이번에 저희는 배열에서의 검색 알고리즘만을 공부해볼 것입니다. 먼저 아래의 알고리즘 사용 주의 사항에 대해 이야기하겠습니다. 알고리즘 활용 시 주의점 1. 상대적인 알고리즘의 수행 시간 2. 활용 용도나 목적, 자료구조 등 체계적인 부분 3..
안녕하세요, 오늘은 오랜만에 새로운 주제에 대해서 글을 작성하려고 합니다. 오늘 작성하는 글의 주제는 자료구조와 알고리즘이며 개념과 기초에 대해서 먼저 소개하려고 합니다. 🤷♂️ 자료구조와 알고리즘을 배우는 이유는? 2019년 2학기 학교 전공과목인 C언어 자료구조와 알고리즘 수업을 통해 처음으로 자료구조와 알고리즘에 대해서 알게 되었습니다. 그 당시 담당 선생님께서는 저희에게 앞으로 개발자라는 직업과 소프트웨어 관련 기업에 취업을 하기 위해서는 자료구조와 알고리즘 공부는 정말 중요하며 꾸준히 문제를 풀어보고 계속 공부를 해야지만 실력이 늘어날 것이라고 매번 말씀을 하셨습니다. 📃 코딩 테스트의 핵심 자료구조와 알고리즘! 대부분의 소프트웨어 관련 기업들은 새로운 인재를 채용할 때 그 사람의 실력을 확인..