[ IT 5분 잡학사전 2주 챌린지 7일차 ]

 

 

알고리즘 : 컴퓨터에게 내리는 지시 사항을 나열한

코드를 효율적으로 만들기 위해 필요하다.

패스파인더 알고리즘 : 목적지까지 최대한 빨리가는 방법을 알려줌
압축 알고리즘 : 이미지를 최대한 덜 손상/용량을 효율적으로 줄여줌
ex. png / jpg

데이터를 효율적으로 보관하고 찾기 위한 자료구조. 자료구조의 자료는 데이터다. 인공지능은 데이터가 엄청나게 필요하고 데이터가 없으면 아무것도 만들 수가 없음. 개발자들은 데이터를 수집하기 위해 많은 일을 하는데 무료 서비스도 그 중 하나다. 무료 서비스의 대가로 우리의 데이터를 수집하는 것..!

자료구조에도 여러방식이 있다.

-작은것부터 큰 순서로 정리(데이터 크기기준)
-이름표를 붙여서 정리(검색을 위한 인덱스 기준)
-데이터가 들어오는 순서로 정리(생성시간 기준)

프로그램의 목적이 다양하므로 자료구조의 방식도 다양한 것.

 

메모리 : 컴퓨터의 기억 공간

비휘발성 메모리 : 컴퓨터의 하드 드라이브 같은 것. 
휘발성 메모리 : 램(RAM, random access memory)

컴퓨터를 끄면 램에 있는 데이터는 전부 사라지고, 램에는 프로그램에 필요한 데이터가 저장된다. 프로그램의 변수, 함수 등이 저장되는데- 즉 램이 있어서 프로그램을 실행할 수 있는 것이다. + 램은 데이터가 저장된 위치와 상관없이 일정한 접근 속도를 보장함.

 

배열은 램에 줄줄이 이어진 형태로 공간을 차지함. 

배열의 원리 : 컴퓨터는 배열의 시작 주소와 길이를 알고 있다. 그래서 배열은 읽는 속도가 아주 빠르다. + 배열은 맨 앞부터 차곡차곡 채워져 있어야 하며 고로 삽입과 삭제가 느리다. 

*배열은 0부터 숫자를 매김

알고리즘 속도 : 시간 복잡도를 표현하는 Big-O 표기법.

단지 설명을 간단하게 만들어 줄 뿐 아니라, 알고리즘 분석을 빠르게 할 수 있게 도와줌.

 

검색 알고리즘

선형검색 알고리즘(linear search) : 가장 자연스러운 검색 방법. 
이진 검색 알고리즘(binary search) : 배열의 크기가 클 때 선형검색보다 훨씬 좋다. -> 거대한 배열을 다룰 때 효과적 + 이진 검색 알고리즘을 사용하고 싶다면 배열은 항상 정렬되어 있어야 한다.

 

반응형