본문 바로가기

부스트 코딩 뉴비 챌린지 2020

(3)
탐색 알고리즘 (검색 알고리즘: 선형검색과 이진검색) 목차 탐색 알고리즘이란 선형 검색이란 C언어로 선형 검색을 구현한 코드 이진 검색이란 C언어로 이진 검색을 구현한 코드 선형 검색과 이진 검색의 시간복잡도 탐색 알고리즘 이란? 탐색 알고리즘이란 수많은 데이터들 사이에서 원하는 데이터를 찾는 알고리즘이다. 실제로 검색 엔진에 탐색 알고리즘이 많이 사용되기도 한다. 그래서 탐색 알고리즘을 검색 알고리즘이라고 부르기도 한다. 오늘은 탐색 알고리즘 중 선형 검색과 이진 검색에 대한 내용을 다룰 것 이다. 선형 검색 이란? 선형 검색은 위의 그림처럼, 가장 좌측부터 우측까지 순서대로 원하는 데이터를 찾아보는 알고리즘이다. 즉 첫 번째부터 끝까지 하나하나 확인하는 알고리즘이다. 선형 검색은 배열이 정렬되어 있지 않던, 정렬되어 있던 이용할 수 있다. 하지만 하나하..
알고리즘 표기법 (시간 복잡도: Big O 와 Big Ω) 목차 시간 복잡도란? Big-O 란? Big-O 의 종류 Big-Ω 란? Big-Ω 의 종류 Big-O가 낮은 알고리즘이 좋을까? Big-Ω가 낮은 알고리즘이 좋을까? 시간 복잡도란? 시간 복잡도란 입력값과 문제를 해결하는 데 걸리는 시간을 함수 관계로 나타낸 것 이다. 즉 실행시간을 기준으로, 알고리즘이 얼마나 효율적인지를 판단할 수 있는 척도이다. 시간 복잡도는 최악의 경우, 최선의 경우, 평균의 경우를 계산해서 나타낸다. 이때 최악의 경우는 Big-O(빅-오), 최선의 경우는 Big-Ω(빅-오메가), 평균의 경우는 Big-θ(빅-세타)로 나타 낸다. 이번 글은 Big-O(빅-오)와 Big-Ω(빅-오메가)에 대한 내용만 다룰 것 이다. Big-O 란? Big-O(빅-오) 란, 위에서 언급했듯이 최악의..
비트와 바이트 목차 비트(bit)와 바이트(byte) 비트(bit)와 바이트(byte)의 활용 컴퓨터는 아날로그 신호인 소리를 어떻게 디지털로 저장할까? 컴퓨터의 CPU는 1초에 몇 개의 bit(0과 1)를 처리할 수 있을까? 비트(bit)와 바이트(byte) 비트(bit)는 0과 1, 두가지 값만 가질 수 있는 측정 단위이다. 즉 2진법으로 표현된 수에서 각각의 자릿수 하나를 비트라고 한다. 그러므로 사진 맨 윗줄의 00110101은 8개의 비트가 줄 세워져 있다고 볼 수 있다. 바이트(byte)는 비트 8개의 비트열이라고 생각하면 된다. 즉 1byte = 8bit 인 것이다. 한 바이트에는 8개의 비트가 있으므로, 한 바이트에서 표현될 수 있는 경우는 2×2×2×2×2×2×2×2=256 가지 이다. 비트(bit)와..