본문 바로가기

CS study2

선형자료구조 - List,Stack,Queue 자료구조란? 자료에 효율적으로 접근하고 수정할 수 있도록 데이터를 구성하고 저장하는 방법 선형자료와 비선형 자료에 구분 선형자료구조 : array, linked, list, stack, queue 비선형자료구조 : tree, graph 선형자료구조 Array 선형 자료구조 데이터 접근이 용이하다. (인덱스로 접근) 데이터 삽입/삭제가 어렵다. 구조가 간단하여 프로그램 작성이 쉽다. 데이터 조회 : O(1) 데이터 삽입/삭제 : O(n) var mulitArray : [[Int]] = [[1,2],[3,4]] Linked List 각 노드가 데이터와 포인터를 가지고 일렬로 연결되어 있는 방식 선형 자료구조 데이터의 접근이 느리다. (링크를 타고 찾아야함) 데이터의 삭제/삽입 연산이 용이.. 2024. 3. 31.
알고리즘 알고리즘은 완전탐색(Brute-Force, 모든 경우의 수를 탐색해보는것)에서 시작된다. 완전탐색은 모든 경우의 수를 따지기에 강력하지만 최대의 시간 복잡도를 갖는다. 모든 경우의 수를 생각해보면서 시간복잡도를 줄일 수 있는방법이 있다면 그러한 알고리즘을 생각해보고 구현해봐야한다. 문제를 파악하고 알고리즘 생각하기 알고리즘의 공간복잡도와 시간복잡도를 계산하여 문제의 제약 조건 내에 수행될 수 있는 알고리즘인지 판단하기 알고리즘을 빠르고 정확하게 구현하기 시간복잡도 vs 공간복잡도 시간 복잡도 (Time Complexity) : Big-O표기법 시간 복잡도는 특정한 크기의 입력에 대하여 알고리즘이 얼마나 오래 걸리는지를 의미한다. 상한선 일반적인 알고리즘 문제 풀이에서 복잡도는 시간 복잡도이다. O(N^3.. 2024. 3. 17.