Coding Test/Theory 2

알고리즘 성능 : 시간복잡도와 공간복잡도 (Big-O)

알고리즘 성능을 판단하는 복잡도알고리즘 성능을 판단하는 주요 수단은 시간 복잡도(Time Complexity)와 공간 복잡도(Space Complexity)입니다. 이 두 가지는 알고리즘이 실행되는 데 필요한 자원(시간과 메모리)을 평가하는 중요한 기준입니다. 자세히 살펴보면: 1. 시간 복잡도 (Time Complexity)정의 : 주어진 입력 크기 nn에 대해 알고리즘이 실행되는 데 걸리는 시간의 양을 측정합니다.목적 : 입력 크기가 커질수록 알고리즘이 얼마나 빨리 실행되는지를 평가합니다.표기법 : 보통 빅오 표기법 (Big O Notation)을 사용하여 최악의 경우를 나타냅니다. 예를 들어 :O(1)O(1) : 상수 시간 복잡도O(n)O(n) : 선형 시간 복잡도O(n2)O(n^2) : 이차 시간..

Coding Test/Theory 2025.03.07

Data Structure : 자료구조의 개념과 종류

책에서는 자료구조(Data Structure)에 대해 이렇게 설명합니다. '자료구조란, 데이터 단위와 데이터 자체 사이의 물리적 또는 논리적인 관계로, 여기서 데이터 단위란 데이터를 구성하는 하나의 덩어리라고 생각하면 된다. 이를 보다 쉽게 이해하자면 자료구조는 자료를 효율적으로 사용할 수 있도록 컴퓨터에 저장하는 방법을 말한다.' 이미 자료구조가 무엇인지 아는 사람에게는 이해가 어렵지 않지만, 모르는 사람에겐 다소 어렵습니다. 프로그램의 수행은 자료(Data)와 그 자료를 활용하는 명령어들로 이루어집니다. 자료는 데이터와 같은 말로, 그렇다면 자료구조는 자료들을 어떤식으로 효율적으로 구성하느냐의 문제입니다. 여기서 구성되느냐의 의미는 프로그램 수행 시 효율적으로 수행될 수 있는 메모리에 저장하는 방식을..

Coding Test/Theory 2024.12.03