good_da22 's devLog

분류 전체보기 108

HTML 기본

HTML 웹 페이지 문서 구조 담당 마크업 언어(markup language)로 웹 문서를 작성하며, tag를 사용하여 문서의 구조 등을 기술하는 언어 tag와 속성 HTML 문서는 tag로 만들어진다. 시작 태그와 종료 태그 사이 바디가 없는 경우 시작 태그만 존재 HTML 문서의 전체 구성은 html, head, body tag로 구성 tag는 시작 tag와 종료 tag로 쌍을 이루거나 시작 tag만 존재하는 tag도 있다. 시작 tag 와 종료 tag 은 '/'로 구분하며 중첩되지 않도록 한다. 각각의 tag는 속성과 속성의 값이 존재 HTML tag에는 어느 tag에나 사용할 수 있는 글로벌 속성(global attribute) 이 있다. class : tag에 적용할 스타일의 이름..

Front-End/HTML5 2022.08.30

CSS 소개

CSS CSS(Cascading Style Sheets)란 HTML 문서를 화면에 표시하는 방식을 정의한 언어 W3C에서 공인한 표준 CSS 규칙 선택자(selector) 와 선언(declaration) 두 부분으로 구성 선택자는 규칙이 적용되는 엘리먼트 선언 부분에서는 선택자에 적용될 스타일을 작성 선언은 중괄호로 감싸며, 속성(property) 과 값(value) 로 구성 속성(property)은 선택자에서 바꾸고 싶은 요소 (ex. color, font, width, height...) 값(value)은 속성에 적용할 값 여러 선택자에 동일한 스타일을 적용할 때, comma(,)로 구분하여 나열(선택자 그룹화) 선언 안에 하나 이상의 속성을 작성할 수 있으며, 각 속성은 semi-colon(;)으로..

Front-End/CSS 2022.08.30

HTML 소개

HTML HTML은 Hypertext Markup Language의 약자 1990년도 이후 웹(Web, World Wide Web)에서 사용하는 문서 양식 문서에 하이퍼텍스트, 표, 목록, 비디오 등을 포함할 수 있는 tag(Tag)를 사용 문서를 Web Brower 에 표현할 때 tag 를 사용(Markup 적용) HTML 개발 배경 다양한 플러그인들로 인한 Browser간의 부작용을 막기위해 개발 W3C에서 Web Application1.0을 HTML5로 수용 웹 표준 모든 브라우저에서 웹서비스가 정상적으로 보여질 수 있도록 하는 것 W3C(World Wide Web Consortium)에서 HTML5를 웹 표준으로 권고하고 웹 브라우저는 이를 따른다. HTML5 특징 별도의 플러그인 없이 멀티미디어..

Front-End/HTML5 2022.08.30

스택(stack) / 큐(queue)

스택 (stack) 물건을 쌓아 올리듯 자료를 쌓아 올린 형태의 자료구조 스택에 저장된 자료는 선형 구조를 갖는다. 선형 구조 : 자료 간의 관계가 1대 1의 관계를 갖는다. 비선형 구조 : 자료간의 관계가 1대 N관계를 갖는다. ex) 트리 스택에 자료를 삽입하거나 자료를 꺼낼 수 있다. 후입선출구조(LIFO - Last In First Out) 마지막에 삽입한 자료를 가장 먼저 꺼낸다. 주요 연산 top : 저장된 원소 중 마지막 원소 push : 저장소에 자료를 저장한다.(삽입) pop : 저장소에서 자료를 꺼낸다.(삭제) peek : 스탯의 top에 있는 item(원소)를 반환한다. 삭제가 일어나지 않는다. java.util.Stack push() pop() isEmpty() size() Func..

힙(heap)

힙(heap) 완전 이진 트리 에 있는 노드 중에서 키 값(data)이 가장 큰 노드나 키 값이 가장 작은 노드를 찾기 위해서 만든 자료구조 최대 힙(max heap) 키 값이 가장 큰 노드를 찾기위한 완전 이진 트리 부모 노드의 키 값 >= 자식 노드의 키 값 - 트리의 모든 노드에 성질 적용 루트 노드 : 키 값이 가장 큰 노드 최소 힙(min heap) 키 값이 가장 작은 노드를 찾기 위한 완전 이진 트리 부모 노드의 키값

너비 우선 탐색(BFS) / 깊이 우선 탐색(BFS)

너비 우선 탐색(Breadth First Search, BFS) 비선형 자료구조를 완전탐색 너비 - 루트에서 자신까지 오는 간선 수 (각 노드에서의 높이), 높이가 낮은 순서에서 높은 순서로 너비 우선 탐색은 루트 노드의 자식도드를 먼저 모두 차례로 방문한 후, 방문했던 자식 노드들을 기준으로 하여 다시 해당 노드의 자식 노드들을 차례로 방문하는 방식 인접한 노드들에 대해 탐색 후, 차례로 다시 너비우선탐색을 진행해야 하므로, 선입선출 형태의 자료구조인 큐를 활용 BFS() 큐 생성 루트 v를 큐에 삽입 while(큐가 비어 있지 않은 경우) { t L 현재 노드 T의 오른쪽 서브트리로 이동 -> R preorder_traverse(T) if (T is not null) visit(T) preorder_..

트리(tree)

트리(tree) 비선형 구조 원소들 간에 1:N 관계를 가지는 자료구조 원소들 간에 계층관계를 가지는 계층형 자료구조 상위 원소에서 하위 원소로 내려가면서 확장되는 트리모양의 구조 노드(node) - 트리의 원소 한 개 이상의 노드로 이루어진 유한 집합이며 다음 조건을 만족한다. 노드 중 최상위 노드를 루트(root)라고 한다.(상위 노드가 없는 유일한 노드) 나머지 노드들은 n(>=0)개의 분리 집합 T1, T2, ... ,TN 으로 분리될 수 있다. 단말노드(leaf node) : 더 이상 하위 노드를 가질 수 없는 노드 T1, T2, ... ,TN 이들은 각각의 하나의 트리가 되며(재귀적 정의) 루트의 부 트리(sub tree)라고 한다. 용어 정리 노드(node) - 트리의 원소 간선(edge) ..

순열(permutation) / 조합(combination) / 부분 집합(sub set)

순열(Permutation) 서로 다른 것들 중 몇 개를 뽑아서 한 줄로 나열하는 것 서로 다른 n개중 r개를 선택하는 순열 nPr nPr = n * (n-1) * (n-2) * ... * (n-r+1) nPn = n! = n * (n-1) * (n-2) * ... 2 * 1 다수의 알고리즘 문제들은 순서화된 요소들의 집합에서 최선의 방법을 찾는 것과 관련 있다. N 개의 요소들에 대해서 n!개의 순열이 존재 12! = 479,001,600 n > 12 인 경우, 시간 복잡도 폭발적으로 증가 순열과 조합의 차이 - 순서가 의미가 있는가? 순서가 의미가 있으면 : 순열 순서가 의미가 없으면 : 조합 재귀 호출을 통한 순열 생성 numers[] // 순열 저장 배열 isSelected[] // 인덱스에 해당..

완전 검색(Exhaustive Search)

완전 검색(Exhaustive Search) 문제의 해법으로 생각할 수 있는 모든 경우의 수를 나열해보고 확인하는 기업 brute-force 혹은 generate-and-test 기법이라고도 한다. 모든 경우의 수를 테스트한 후, 최종 해법을 도출 상대적으로 빠른 시간에 문제 해결(알고리즘 설계) 가능 일반적으로 경우의 수가 상대적으로 작을 때 유용 시간적으로 불리, 시간 복잡도 계산 필요 중복 계산(호출)이 있을 경우, 메모이제이션, 가지치기 고려 그외 경우 아이디어 바꾸기 수행 속도는 느리지만 해답을 찾아낼 가능성이 크다 완전 검색으로 접근하여 해답을 도출, 성능 개선을 위해 다른 알고리즘을 사용하고 해답을 확인하는 것이 바람직 많은 종류 문제들이 특정 조건을 만족하는 경우나 요소를 찾는것 순열(pe..