오블완 10

[Java] 탐색 트리

탐색트리(Search Tree)저장된 데이터에 대해 탐색, 삽입, 삭제, 갱신 등의 연산을 수행할 수 있는 자료구조배열이나 연결리스트는 각 연산을 수행하는데 O(N) 시간이 소요스택이나 큐는 특정 작업에 적합한 구조리스트 자료구조의 수행시간을 향상시키기 위한 트리 형태의 다양한 사전 자료구조이진탐색트리AVL트리2-3트리레드블랙트리B-트리이진탐색트리(BST)이진탐색(Binary Search)의 개념을 트리 형태의 구조에 접목한 자료구조오름차순으로 정렬된 데이터의 중간에 위치한 항목을 기준으로 데이터를 두 부분으로 나누어 가며 특정 항목을 찾는 탐색방법트리형태의 자료구조에서 이진탐색을 수행하기 위해 1차원 배열을 단순연결리스트로 만든 후 점진적으로 이진트리 형태로 변환해가는 과정트리를 중위순회하면 정렬되어 ..

[JavaScript] 객체 리터럴

객체란?자바스크립트는 개체 기반의 프로그래밍 언어이면 자바스크립트를 구성하는 거의 모든 것이 객체 (원시 값 제외 나머지)객체 타입은 다양한 타입의 값을 하나의 단위로 구성한 복합적인 자료구조객체는 변경 가능한 값객체는 0개 이상의 프로퍼티(키와 값으로 구성)와 메서드(함수가 프로퍼티 값으로 사용되는 경우)로 구성된 집합객체 리터럴에 의한 객체 생성자바스크립트는 프로토 타입 기반 객체지향 언어로서 클래스 기반 객체지향 언어(C++, Java)와 달리 다양한 객체 생성방법을 지원객체 리터럴 : 객체를 생성하기 위해 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용하여 값을 생성하는 표기법중괄호 {…} 내에 0개 이상의 프로퍼티를 정의, 미정의 시 빈 객체 생성중괄호는 코드 블록을 의미하지 않기 때문에..

[Java] Tree

트리일반적인 트리는 실제 트리를 거꾸로 세워놓은 형태의 자료 구조HTML과 XML의 문서 트리, 자바 클래스 계층 구조, 운영체제의 파일 시스템, 탐색트리, 이항 힙, 피보나치 힙과 같은 우선순위큐에서 사용일반적인 트리의 정의트리는 empty이거나 empty가 아니면 루트노드 R과 트리의 집합으로 구성되는데단, 트리의 집합은 공집합일 수도 있다.용어루트(Root) 노드 : 트리 최상위에 있는 노드자식(Child) 노드 : 노드 하위에 연결된 노드차수(Degree) : 자식 노드의 수부모(Parent) 노드 : 노드의 상위에 연결된 노드리프(Leaf) 노드 : 자식이 없는 노드 (단말(Terminal) 혹은 외부 노드라고 하기도 함)내부(Internal) 노드 : 비단말(Non-Terminal) 노드로 리..

[뮤지컬] 젠틀맨스 가이드

젠틀맨스 가이드 관람했습니다 관내 전입 1년안인 경우 50% 할인 받아볼 수 있었습니다 다이스퀴스 후계자가 연달아 죽어가는 상황를 코믹하게 풀어낸 뮤지컬로 배우들 연기랑 애드립이 재미있었어요 지역색을 맞춰서 하니 웃음이 절로 나왔습니다 캐스팅은 이렇고 저는 16일 6시 30분 공연을 감상했습니다 피비 역의 이지수님 성량에 두 번 놀랐어요 완전 추천 ! 앞에서 사진 찰칵

개인/빅데이터 2024.11.17

[JavaScript] 타입 변환과 단축 평가

타입 변환개발자가 의도적으로 값의 타입을 변환하는 것은 명시적 타입 변환 또는 타입 캐스팅이라 한다.var x = 10;lvar str = x.toString();개발자의 의도와는 상관없이 표현식을 평가하는 도중에 자바스크립트 엔진에 의해 암묵적으로 타입이 자동으로 변화는 되는 것을 암묵적 타입 변화 또는 타입 강제 변환이라 한다.var x = 10;var str = x + '';다만 기존 원시값은 변경 불가능한 값으로 변경할 수 없으므로 기존 원시 값을 사용해 다른 타입의 새로운 원시 값을 생성하는 것을 의미한다.암묵적 타입 변환자바스크립트는 가급적 에러를 발생시키지 않도록 암묵적 타입 변환을 통해 표현식을 평가한다.문자열 타입으로 변환자바스크립트 엔진은 문자열 연결 연산자 표현식을 평가하기 위해 문자..

[JavaScript] 제어문

제어문제어문을 사용하면 코드의 실행 흐름을 인위적으로 제어할 수 있으나 가독성을 해치는 단점이 있다. forEach, map, filter, reduce와 같은 고차함수를 사용한 함수형 프로그래밍 기법에서 제어문 사용을 억제하여 복잡성을 해결하려고 노력한다.블록문블록문은 0개 이상의 문을 중괄호로 묶은 것으로 자바스크립트는 블록문을 하나의 실행 단위로 취급한다.블록문은 단독 사용할 수 있으나 일반적으로 제어문이나 함수를 정의할 때 사용하는 것이 일반적이다.자바스크립트 문에서 세미콜론(;)을 붙이는 것이 일반적이나 블록문은 자체 종결성을 갖기 때문에 세미콜론을 붙이지 않는다.// 블록문{ var foo = 10;}// 제어문var x = 1;if (x 조건문주어진 조건식의 평가 결과에 따라 코드 블록..

[JavaScript] 표현식과 문

값값은 식(표현식)이 평가되어 생성된 결과로 모든 값은 데이터 타입을 가지며 메모리에 2진수(비트)로 나열로 저장된다.값 생성리터럴사람이 이해할 수 있는 문자(아라비아 숫자, 알파벳, 한글 등) 또는 약속된 기호(’’, “”, ., [], {}, // 등)를 사용해 값을 생성하는 표기법리터럴예시비고정수 리터럴100부동소수점 리터럴10.52진수 리터럴0b01000010b로 시작8진수 리터럴0o1010o로 시작(ES6 도입)16진수 리터럴0x410x로 시작(ES6 도입)문자열 리터럴'Hello’”World”불리언 리터럴truefalsenull 리터럴nullundefined 리터럴undefined객체 리터럴{ name : ‘Lee’, address : ‘Seoul’ }배열 리터럴[ 1, 2, 3 ]함수 리터럴..

[Java] Stack & Queue

스택(Stack)한 쪽 끝에서만 item(항목)을 삭제하거나 새로운 item을 저장하는 자료구조새 item을 저장하는 연산 : pushTop item을 삭제하는 연산 : pop후입 선출(Last-In First-Out, LIFO) 원칙 하에 item의 삽입과 삭제 수행구현배열로 구현한 ArrayStack 클래스import java.ut8il.EmptyStackException;public class ArrayStack { private E S[]; // 스택을 위한 배열 private int top; // 스택의 top 항목의 배열 원소 인덱스 // 스택 생성자 public ArrayStack() { s = (E[]) new Object[1]; // 초기 크기 1..