전체 글 36

230926 [Day6] JavaScript 주요 문법 (5)

자료구조&알고리즘 - 트리 방향 그래프의 일종으로 정점을 가리키는 간선이 하나 밖에 없는 구조를 가지고 있다. 레벨 : 루트로부터 몇 번째 깊이인지 표현 degree(차수) : 한 정점에서 뻗어나가는 간선의 수 특징 root 정점을 제외한 모든 정점은 하나의 부모 정점을 가지고 있다 정점이 n개인 트리는 간선이 n-1개 → 하나의 부모 정점을 가지기 때문에 루트에서 특정 정점으로 가는 경로는 유일하다 → 하나의 부모 정점을 가지기 때문에 이진트리 각 정점이 최대 2개의 자식을 가지는 트리이다. 주로 탐색할때 많이 쓰인다. 정점이 N개 →(최악의 경우) 높이(n개) ⇒ 편향트리 정점이 N개 →(포화 or 완전이진트리) 높이(logn) ⇒ 레벨이 올라갈수록 2배씩 정점이 생성 높이가 h인 포화 이진 트리 :..

230925 [Day5] JavaScript 주요 문법 (4)

자료구조&알고리즘 - 큐 큐는 FIFO(first in first out)이라는 특징을 가진 선형 자료구조이다. enqueue함수를 통해서 데이터를 뒤에 집어넣고 dequeue함수를 통해서 젤 앞에 있는 데이터를 빼고 peek함수를 통해서 젤 앞에 있는 데이터를 제공하는 메소드들이 있다. 언제 이 자료구조를 사용할 수 있을까? 현실세계에서는 줄을 세울때 사용된다고 예상할수 있다. 순서대로 빠져나가고 들어갈때 사용될수 있는 자료구조이다. Linear Queue 선형 큐 Array로 표현하기 간단하게 구현할수 있지만 array 특징인 dequeue시 빈공간은 채워지지 않게된다. 그로 인해서 공간이 꽉차게 되면 더이상 채워지지 않지만 js는 동적으로 자유자재로 늘어난다는 점에서 괜찮긴하나 front, rear..

230922 [Day4] JavaScript 주요 문법 (3)

자료구조와 알고리즘이 중요한 이유 재료 - 데이터 도구 - 자료구조 레시피 - 알고리즘 요리 - 소프트웨어 요리사 - 개발자 이 예시 덕분에 각각의 의미와 서로의 관계를 잘 알 수 있었다. 자료구조 + 알고리즘 = 프로그램 자료구조 자료구조는 메모리를 효율적으로 사용하여 안정적으로 데이터를 처리하는 것이 궁극적인 목표로 상황에 따라 유용하게 사용될 수 있도록 특정구조를 이루고 있다. 즉, 상황에 맞게 자료구조를 선택해야한다. -> but, 메모리를 느리고 불안정하게 처리할 수 있다. 리스트, 큐, 스택, 덱, 트리, 그래프 등 알고리즘 특정 문제를 효율적이고 빠르게 해결하는 것이 궁극적인 목표로 정해진 일련의 절차나 방법을 공식화한 형태로 표현한 것 수학적으로 표현할 수 있다. 이진탐색, 최단거리찾기 등..

230921 [Day3] JavaScript 주요 문법 (2)

네트워크 기초 브라우저에 URL을 입력하면 무슨 일이 발생할까요? URL 을 해석한다. ( URL은 스키마, 계정정보, 호스트, 포트와 같은 정보로 이루어져있다.) scheme://:@:/ DNS를 조회한다. (Domain Name System) 도메인과 IP주소를 서로 변환해 주는 시스템 https://www.comic.naver.com 에서 'naver.com'부분은 도메인(Domain)이고, comic 부분은 호스트 네임이다. uri 해석 → 브라우저 캐시 확인 없으면 → host 파일 참조, 없으면 → dns 호출 → root server → TLD server → Authoritative server → ip주소 반환 uri 해석 → 브라우저 캐시 확인 없으면 → host 파일 참조, 있으면 →..

230920 [Day2] JavaScript 주요 문법 (1)

JavaScript와 프론트엔드 개발 JavaScript로 무엇을 할 수 있을까? 과거 : 단순하게 버튼을 눌렀을 때 DOM 조작 / 이벤트가 발생했을 때 alert 현재 : 프론트엔드 개발 / 서버, 모바일 앱 개발 서버 개발 : node.js, NestJS, Express ... 앱 개발 : React Native, NativeScript, Cordova ... 프론트엔드 개발 : jQuery, Backbone.js, React, Vue, Angular ... +특정 도메인에 해당하는 지식 브라우저의 동작 원리 1. 통신 : 브라우저와 서버와의 통신을 의미 브라우저가 서버에 요청을 보내면 서버는 요청에 따라 특정 값을 응답합니다. 요청은 한 번에 하나를 할 수도 있고, 한 번에 여러 개를 할 수도 있..

[JAVA] 코드업 기초 100문제 - [기초-입출력] 1010 ~ 1027

#1010 [기초-입출력] 정수 1개 입력받아 그대로 출력하기 import java.util.Scanner; public class Main{ public static void main (String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); System.out.println(n); } } 사용자의 입력을 받기 위해서 쓰는 Scanner 클래스를 사용한다. 1) 현재 클래스 외부에 있는 Scanner 클래스 import 하기 import java.util.Scanner; 2) Scanner 객체 생성하기 Scanner sc = new Scanner(System.in); 3) 생성한 객체에서 제공하는 .next(); 메서드를 ..