파이썬 알고리즘 인터뷰 책을 정리한 포스트 입니다. 해시맵 디자인 다음의 기능을 제공하는 해시맵을 디자인하라. put(key, value): 키, 값을 해시맵에 삽입한다. 이미 존재하는 키라면 업데이트 한다. get(key): 키에 해당하는 값을 조회한다. 만약 키가 존재하지 않는다면 -1을 리턴한다. remove(key): ...
Hash map (Python Algorithm interview 11장)
javascript 내장 함수 (문자열 다루기, map, filter, reduce)
이 포스트는 엘리스 AI 트랙 4기 강의를 듣고 정리한 내용입니다. 문자열 조작하기 문장에서 각 알파벳이 몇개 존재하는지 출력하는 알고리즘을 구현해 보았다. Javascript의 문자열을 조작할 수 있는 내장함수를 사용했다. const stringControll = "hi my name is marshmello!!"; const alph...
deque, 우선순위 큐 (Python Algorithm interview 10장)
파이썬 알고리즘 인터뷰 책을 정리한 포스트 입니다. K개 정렬 리스트 병합 k개의 정렬된 리스트를 1개의 정렬된 리스트로 병합하라. 입력 [ 1->2->5, 1->3->4, 2->6 ] 이 문제에서는 우선순위 큐로 해결할 수 있으며 PriorityQueue모듈을 사용하지 않고 heapq모듈을 사용한다....
DFS/BFS (이것이 취업을 위한 코딩 테스트다)
이것이 취업을 위한 코딩 테스트다를 정리한 글입니다. 탐색 많은 양의 데이터 중에서 원하는 데이터를 찾는 과정이다. 탐색 알고리즘으로 DFS/BFS가 있으며 이번 포스팅에서 다뤄보려고 한다. DFS(Depth-First Search) 깊이 우선 탐색이라고 하며, 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘이다. 그래프는 노드와 ...
javascript(DOM, Event, Class)
이 포스트는 엘리스 AI 트랙 4기 강의를 듣고 정리한 내용입니다. javascript의 기초적인 문법은 바닐라 JS로 크롬 앱 만들기 포스트에 있다. DOM DOM은 Document Object Model로 문서(document)를 객체(object)로 표현(model)하는 것이다. 객체를 통해 웹 페이지를 프로그래밍으로 조작할 수 있도록...
Git을 사용해보자
이 포스트는 엘리스 AI 트랙 4기 강의를 듣고 정리한 내용입니다. git은 효율적인 협업을 위한 툴로 버전 관리가 쉽다. git의 특징으로는 작업의 종류를 나눌 수 있는 가지치기와 병합을 지원한다. 분산 작업이 가능하고 이전 과거와 현재의 변경사항을 확인할 수 있다. local 영역의 working directory와 staging are...
그리디 알고리즘 (이것이 취업을 위한 코딩 테스트다)
이것이 취업을 위한 코딩 테스트다를 정리한 글입니다. 그리디 알고리즘 그리디 알고리즘은 “현재 상황에서 지금 당장 좋은 것만 고르는 방법”이다. 매 순간 가장 좋은 선택을 하고, 현재의 선택이 나중에 미칠 영향은 고려하지 않는 방법이다. 거스름돈 거스름돈 문제는 그리디 알고리즘을 잘 나타내는 문제이다. 상점에는 500원, 100원, 5...
연결 리스트 (Python Algorithm interview 8장)
파이썬 알고리즘 인터뷰 책을 정리한 포스트 입니다. 페어의 노드 스왑 입력 1 -> 2 -> 3 -> 4 출력 2 -> 1 -> 4 -> 3 값만 교환 def swapPaire(self, head): cur = head while cur and cur.next: # ...
비지도 학습 (Hands-On Machine Learning Part1)
비지도 학습 지도 학습은 레이블된 데이터를 이용해 학습을 진행한다. 데이터에 정답이 있는 경우이다. 이번 장에서는 데이터에 레이블을 붙일 필요 없이 알고리즘이 레이블이 없는 데이터를 바로 사용할 수 있는 비지도 학습에 대해 알아본다. 비지도 학습에는 군집(clustering), 이상치 탐지(outlier detection), 밀도 추정(densit...
HTML and CSS
이 포스트는 엘리스 AI 트랙 4기 강의를 듣고 정리한 내용입니다. HTML과 CSS는 웹 페이지의 화면을 구성하는 가장 기본적인 구성 요소이다. HTML은 웹 사이트에서 눈에 보이는 정보나 특정 구역을 설정할 때 사용하는 마크업 언어이다. 이 포스트에서는 HTML의 태그와 CSS의 속성에 대해 알아본다. HTML tag <!DOC...