본문 바로가기

전체 글

(1092)
[동빈나]이코테 2021 강의 몰아보기 (16)(2021.1.20) 본 내용은 해당 강의 토대로 작성 자료구조 : 트리(Tree) 가계도와 같은 계층적인 구조를 표현할 때 사용하는 자료 구조 기본적으로 트리의 크기가 N일 때, 전체 간선의 개수는 N-1개 이다. 트리 관련 용어 루트 노드(root node): 부모가 없는 최상위 노드 단말 노드(leaf node): 자식이 없는 노드 크기(size): 트리에 포함된 모든 노드의 개수 깊이(depth): 루트 노드부터의 거리 높이(height): 깊이 중 최댓값 차수(degree): 각 노드의 (자식 방향) 간선 개수 이진 탐색 트리 (Binary Search Tree) 이진 탐색이 동작할 수 있도록 고안된 효율적인 탐색이 가능한 자료구조의 일종 왼쪽 자식 노드 < 부모 노드 < 오른쪽 자식 노드 부모 노드를 기준으로, 왼..
[노마드코더]바닐라 JS로 크롬 앱 만들기 (5)(2021.1.20) 본 내용은 해당 강의 토대로 작성 Make My First JS APP 1. Image Background APP에 배경화면을 출력하는 기능을 넣는다. APP이 가지고 있는 이미지를 페이지를 들어올 때 마다 무작위로 보여준다. Math JavaScript의 모듈 수식에 관련된 기능을 사용할 수 있다. Math.random() 난수 생성 소수점이 포함된 상태로 출력된다. 범위를 지정하려면 * 숫자 를 붙여준다. Math.random( ) * 5 0 ~ 5 사이의 난수 생성 (5 제외) Math.floor() 괄호 안의 숫자의 소수를 없앤다. 버림 처리한다. Math.floor( 3.14 ) 3으로 버림 Math.ceil() 괄호 안의 숫자의 소수를 없앤다. 올림 처리한다. Math.ceil( 3.14 ) ..
[노마드코더]바닐라 JS로 크롬 앱 만들기 (4)(2021.1.19) 본 내용은 해당 강의 토대로 작성 Making My First JS APP 1. Making a To Do List part One JavaScript로 To Do List 를 만든다. HTML index.html에 To Do List를 만들기 위한 form을 만들고 class를 지정한다. JavaScript todo.js를 생성하고 코드를 입력한다. const toDoform = document.querySelector(".js-toDoForm"), toDoInput = toDoform.querySelector("input"), toDoList = document.querySelector(".js-toDoList"); const TODOS_LS = 'toDos'; function paintToDo(te..
[동빈나]이코테 2021 강의 몰아보기 (15)(2021.1.18) 본 내용은 해당 강의 토대로 작성 자료구조: 우선순위 큐(Priority Queue)와 힙(Heap) 1. 우선순위 큐(Priority Queue) 우선순위가 가장 높은 데이터를 가장 먼저 삭제하는 자료구조 우선순위에 따라 처리하고 싶을 때 사용 자료구조 추출되는 데이터 스택(Stack) 가장 나중에 삽입된 데이터 큐(Queue) 가장 먼저 삽입된 데이터 우선순위 큐(Priority Queue) 가장 우선순위가 높은 데이터 우선순위 큐 구현 방법 단순히 리스트를 이용하여 구현 힙(Heap)을 이용하여 구현 데이터의 개수가 N개일 때, 구현 방식에 따른 시간 복잡도 우선순위 큐 구현 방식 삽입 시간 삭제 시간 리스트 O(1) O(N) 힙(Heap) O(logN) O(logN) 2. 힙(Heap)의 특징 완..
[동빈나]이코테 2021 강의 몰아보기 (14)(2021.1.17) 본 내용은 해당 강의 토대로 작성 개발형 코딩 테스트 정해진 목적에 따라서 동작하는 완성된 프로그램을 개발하는 것을 요구하는 코딩 테스트 유형 일부 기업은 해커톤을 통해 채용을 진행 해커톤(Hackathon) : 단기간에 아이디어를 제품화하는 프로젝트 이벤트 1~2일 진행 분야에 따라 상세 요구사항이 다르다. 모바일 클라이언트 개발 : 안드로이드, iOS 앱 개발 웹 서버 개발 : 스프링(Spring), 장고(Django) 등의 서버 개발 프레임워크 활용 분야에 상관없이 꼭 알아야 하는 개념과 도구는 학습해야 한다. 서버, 클라이언트, JSON, REST, API, … 서버와 클라이언트 클라이언트가 요청(Request)을 보내면 서버가 응답(Response)한다. 웹 클라이언트 웹 서버 PC 워크스테이션..
[동빈나]이코테 2021 강의 몰아보기 (13)(2021.1.16) 본 내용은 해당 강의 토대로 작성 기타 알고리즘 1. 소수 (Prime Number) 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 자연수로는 나누어 떨어지지 않는 자연수 코딩 테스트에서 어떤 자연수가 소수인지 아닌지를 판별해야 하는 문제 자주 출제 기본적인 알고리즘 # 소수 판별 함수(2 이상의 자연수에 대하여) def is_prime_number(x): # 2부터 (x - 1)까지의 모든 수를 확인하며 for i in range(2, x): # x가 해당 수로 나누어 떨어진다면 if x % i == 0: return False # 소수가 아님 return True # 소수임 print(is_prime_number(4)) print(is_prime_number(7)) O(X) 시간 복잡도 약수의 성..
[노마드코더]바닐라 JS로 크롬 앱 만들기 (3)(2021.1.15 ~ 16) 본 내용은 해당 강의 토대로 작성 Making My First JS APP 1. Making a JS Clock part One 현재 시간을 출력하는 코드를 작성한다. Console 사용할 함수들이 어떻게 작동하는지 크롬 개발자 도구를 사용하여 확인해본다. new Date( ) : 날짜와 관련된 객체 date에 선언한 결과, 해당 국가의 표준시가 입력 date.getDay( ) : 요일의 수. 월요일부터 카운트해서 금요일인 5가 나왔다. date.getDate( ) : 몇 일인지 입력 date.getHours( ) : 현재 시간 date.getMinutes( ) : 현재 분 시간 출력 웹 페이지 만들기 페이지를 연 순간을 기점으로 시간을 출력하는 웹 페이지를 만들어 본다. 위 함수들을 사용 HTML 00..
[동빈나]이코테 2021 강의 몰아보기 (12)(2021.1.15) 본 내용은 해당 강의 토대로 작성 기타 그래프 이론 1. 크루스칼 알고리즘 신장 트리 그래프에서 모든 노드를 포함하면서 사이클이 존재하지 않는 부분 그래프를 의미 모든 노드가 포함되어 서로 연결되면서 사이클이 존재하지 않는다는 조건은 트리의 조건이기도 한다. 일부 간선만 활용 일부 간선을 사용하지 않아도 모든 노드를 이을 수 있으므로 유용한 경우가 있다. 최소 신장 트리 N개의 도시가 존재하는 상황에서 두 도시 사이에 도로를 놓아 전체 도시가 서로 연결될 수 있게 도로를 설치하는 경우 두 도시 A, B를 선택했을 때 A에서 B로 이동하는 경로가 반드시 존재하도록 도로를 설치 포함되는 간선의 합이 최소가 되도록 한다. 최종적으로 만들어지는 최소 신장 트리의 포함된 간선 개수는 전체 노드 개수의 -1이다. ..