✨ 데이터 구조란?데이터를 구성하고 저장하는 방법데이터를 식별하는 방법을 제공데이터의 관계를 보여주는 개념✨ 알고리즘 이란?문제를 해결하는 논리적 단계정해진 순서대로 문제를 해결하는 방법. "절차"✨ 서로 다른 개념이면서 상호 보완적.데이터 구조는 알고리즘이 다루는
선형 데이터 구조 선형 데이터 구조의 개요 데이터 구조가 선형이라는 것은 데이터 구조를 구성하는 요소들이 서로 인접해 순차적인 방식으로 정렬되어 있음을 뜻한다. 이러한 데이터 구조는 이해하기 쉬울 뿐더러 프로그램 개발할 때 사용하기 쉽다. 선형 데이터 구조
시간복잡도는 O(n)이다. 데이터가 많아지면 많아질수록 시간이 엄청 늘어난다. ex) 약수 개수 구하기. O(n)으로 데이터의 크기가 커질수록 오래걸림, 선형 알고리즘 방식 ex) 약수 개수 구하기 2 -> 하지만 약수는 O(√n)으로 구할 수 있다.번외 :: 약수의
이진 탐색은 로그와 밀접한 관련이 있다는 것이 밑의 식으로 나타난다.이진 탐색을 하기 위해서는 항상 정렬되어 있어야 한다.정렬된 데이터의 중간 숫자를 찾고 그 수보다 크면 작은수를 버리고 작으면 높은 수를 버리는 식으로 진행됨. n = 정렬된 데이터의 수 , 비교 회수
각 프로그래밍 언어에는 라이브러리 함수 형태로 정렬 알고리즘을 제공한다 실무에서는 정렬 알고리즘 개념과 고나련 라이브러리가 내부적으로 어떻게 동작하는지를 어느 정도 아는 데 집중하기 바란다. 버블 정렬은 시간 복잡도가 O(n²)으로 비효율적 알고리즘. 단순하지만 느리
경로 탐색 알고리즘은 컴퓨팅 분야의 많은 응용 프로그램에서 발견할 수 있는 강력한 도구. 매커니즘을 짧게 알아 보고 어디에 사용되고 어떻게 동작되는지 이해하는 데 중점 너비 우선 탐색(breadth-first search, BFS) 그래프를 탐색하는 알고리즘
알고리즘을 설계하고나면 알고리즘 성능을 분석할 필요가 있다. 이런 알고리즘 효율성을 판단하기 위해 공간 복잡도와 시간 복잡도의 두가지 방법을 이용한다. >시간복잡도 주어진 입력에 따라 알고리즘이 문제를 해결할 때 걸리는 시간. 가장 일반적으로 사용하는 알고리즘 성능