210628알고리즘 : 어떤 일을 하기 위한 명령의 집합성능여러 알고리즘들의 장단점과 차이점을 이해하고 쓸 줄 알아야 한다.다른 자료구조 / 알고리즘을 쓰는 것만으로도 성능이 크게 달라질 수 있다.탐색 문제를 풀 때 사용. 동작 : 단순히 원소 하나하나를 맞는지 아닌지
배열, 연결리스트, 선택 정렬에 관해 공부한다.컴퓨터 메모리의 동작 방식. 엄청나게 많은 서랍이 있고, 각 서랍에는 주소가 붙어 있다.메모리에 무언가를 저장할 때는 컴퓨터에게 공간을 요청한다.여러 개의 원소를 저장할 때, '배열'과 '리스트' 두 방식 중 하나를 선택한
예제 코드 직접 실행해 보기적어도 한 번은 연필과 종이를 가지고 재귀함수의 실행 과정을 따라가 보기.의사코드(pseudocode, 슈도코드) : 문제와 풀이 방법을 간단한 코드로 설명한 것. 실제로 동작하진 않음재귀 함수가 자기 자신을 호출하는 것.문제 : 여러 겹으로
: 문제 해결 방법 중 가장 유명한 재귀적 알고리즘.특정 알고리즘(기술)이 아닌, 문제를 풀기 위한 방법론이다.분할 정복의 증명 - '유클리드 호제법 Euclid's algorithm' 참고하기예시 : 농부가 어떤 땅을 똑같은 정사각형 토지로 나누고 싶을 때.기본 단계
210702예시 식료품 가게에서 일을 한다. 물건의 가격은 장부에 적혀 있다.장부가 알파벳 순서로 정렬되어 있지 않다면 - 일일이 탐색해야 하므로 O(n) 시간이 걸림장부가 정렬되어 있다면 - 이진 탐색을 사용할 수 있으므로 O(log n) 시간이 걸림이진 탐색이 아
❗ X축과 Y축을 가지고 있는 그래프가 아니다!그래프에 대해 설명 후, 너비 우선 탐색 알고리즘을 배운다.너비 우선 탐색은 매우 유용한 알고리즘이다.최단 경로 문제 shortest-path problem가장 짧은 것을 찾아야 하는 문제.최단 경로 문제는 너비 우선 탐색
가장 적은 구간을 지나는 경로가 아닌, 가장 빠른 경로를 찾고 싶을 때 사용.너비 우선 탐색 : 가중치가 없는 균일 그래프에서 최단 경로를 계산최단 경로 = 가장 적은 수의 구간을 가지는 경로다익스트라 알고리즘 : 가중 그래프에서 최단 거리를 계산가중치 : 각 간선(구
탐욕 알고리즘을 적용하는 대표적인 문제.가장 빨리 끝나는 과목을 고른다.1에서 고른 과목이 끝난 후 시작하는 과목 중 가장 빨리 끝나는 과목을 고른다.시간표가 꽉 찰 때까지 1,2를 반복한다.각각의 단계에서 최적의 수를 찾아내는 매우 간단한 알고리즘이다.구현이 간단하다
도둑이 4파운드의 짐을 넣을 수 있는 배낭에 값나가는 물건을 최대한 많이 훔치려 한다.훔칠 수 있는 물건은 3종류 스피커 : 4파운드, 3000달러노트북 : 3파운드, 2000달러기타 : 1파운드, 1500달러훔친 물건의 총 가치를 최대한으로 하려면 어떤 물건들을 훔쳐
KNN알고리즘은 k개의 가장 가까운 이웃 데이터를 이용해 '분류'와 '회귀분석'을 할 수 있는 알고리즘이다.분류 : 그룹으로 나누기회귀 : (숫자로 된) 반응을 예측하기어떤 과일 A가 오렌지인지 자몽인지 어떻게 분류할 수 있는가?일반적으로, 더 크고 붉은 과일이 자몽이
이진 탐색 트리 binary search tree이진 탐색 사용 시, 삽입/삭제마다 배열을 다시 정렬해 사용해야 함.이진 탐색은 정렬된 배열에서만 쓸 수 있기 때문이진 탐색 트리는 사용자 이름을 올바른 위치에 바로 넣기 위해 탄생함모든 정점에 대해 왼쪽에는 더 작은 값