목록분류 전체보기 (79)
영권's
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Sq2bF/btqK85a5wth/fKCGPzkfIXDvi0BiJeyU70/img.png)
트리(Tree)의 개념 트리는 노드(node)들을 간선으로 연결한 계층형 자료구조(hierarchical data structure)를 의미한다. 따라서 이 트리는 제일 위에 하나의 노드를 루트(root)로 하여 나머지 노드들이 간선으로 연결되어 있다. 노드(node)들과 노들을을 간선들로 구성되어 있다. 트리에는 사이클(Cycle)이 존재할 수 없다. 노드들은 특정 순서로 나열될 수 있고 그럴 수 없을 수도 있다. 각 노드는 부모 노드로의 연결이 있을 수도 있고 없을 수도 있다. 각 노드는 어떤 자료형으로도 표현 가능하다. 비선형 자료구조로 계층적 관계를 표현한다. Ex) 디렉터리 구조, 조직도 그래프의 한 종류 사이클(cycle)이 없는 하나의 연결 그래프(Connected Graph) 또는 DAG(..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bcCEiL/btqK7zXImuF/EDuc2kuFbDcW7XP45i52k0/img.png)
REST란 REST는 Representational State Transfer라는 용어의 약자로서 2000년도에 로이 필딩 (Roy Fielding)의 박사학위 논문에서 최초로 소개되었습니다. 로이 필딩은 HTTP의 주요 저자 중 한 사람으로 그 당시 웹(HTTP) 설계의 우수성에 비해 제대로 사용되어지지 못하는 모습에 안타까워하며 웹의 장점을 최대한 활용할 수 있는 아키텍처로써 REST를 발표했다고 합니다. 즉, 자원(Resource)의 표현(Representation)에 의한 상태 전달 a. 자원(Resource)의 표현(representation) 자원 : 해당 소프트웨어가 관리하는 모든 것. EX) 문서 , 그림 , 데이터, 해당 소프트웨어 자체 등 자원의 표현 : 그 자원을 표현하기 위한 이름 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cTztPB/btqKYl0qdpB/vBTZm6nDkFqGlkxPmCYN6K/img.png)
1. 스택(Stack) 스택은 데이터를 일시적으로 저장하기 위한 자료구조로, 데이터의 입력과 출력 순서는 후입선출(LIFO, Last In First Out)입니다. 스택에 데이터를 넣는 작업을 푸시(push)라 하고 데이터를 꺼내는 작업을 팝(pop)이라 합니다. 스택 구조에 푸시와 팝을 하는 위치를 꼭대기(top)이라 하고 스택의 가장 아랫부분을 바닥(bottom)이라고 합니다. Java 프로그램에서 메서드를 호출하고 실행할 때 프로그램 내부에서는 스택을 사용합니다. 스택 구현(Java) import java.util.Scanner; public class StackMain { public static void main(String[] args) { Scanner sc = new Scanner(Sys..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/b95Jhb/btqKYlMc5yK/Vw38uxBPwsGhkzzRyMK0t0/img.png)
자바를 이용하여 개발하는 개발자라면 누구나 자바 바이트코드가 JRE 위에서 동작한다는 사실을 잘 알고 있습니다. 이 JRE에서 가장 중요한 요소는 자바 바이트코드를 해석하고 실행하는 JVM(Java Virtual Machine)입니다. JRE는 자바 API와 JVM으로 구성되며, JVM의 역할은 자바 애플리케이션을 클래스 로더(Class Loader)를 통해 읽어 들여서 자바 API와 함께 실행하는 것입니다. 가상 머신 가상 머신(virtual machine)이란 여러 가지로 정의할 수 있지만, 프로그램을 실행하기 위해 물리적 머신(즉, 컴퓨터)와 유사한 머신을 소프트웨어로 구현한 것을 말한다고 할 수 있다. 지금은 비록 빛이 바랜 목표이긴 하나 자바는 원래 WORA(Write Once Run Anywh..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/coKFDO/btqKNobBn3y/ZVutZ6Js3xKnDVoLeZKRFK/img.png)
1. 선형 검색 : 무작위로 늘어놓은 데이터 모임에서 검색을 수행합니다. 2. 이진 검색 : 일정한 규칙으로 늘어놓은 데이터 모임에서 아주 빠른 검색을 수행합니다. 3. 해시법 : 추가, 삭제가 자주 일어나는 데이터 모임에서 아주 빠른 검색을 수행합니다. · 체인법 : 같은 해시값의 데이터를 선형 리스트로 연결하는 방법 · 오픈 주소법 : 데이터를 위한 해시값이 충돌할 때 재해시 하는 방법 1. 선형 검색 선형 검색이란 요소가 직선 모양으로 늘어선 배열에서의 검색은 원하는 키값을 갖는 요소를 안날 때까지 맨앞부터 순서대로 요소를 검색하면 되는데 이것이 선형 검색(linear search) 또는 순차 검색(sequential search)이라는 알고리즘입니다. 위 그림에서 선형 검색은 다음과 같은 순서로 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/d6bEXX/btqKGkgnKFI/AAOXxGeB86KiRWz0xUesc1/img.png)
1.1 HTTP는 (Hyper Text Transfer Protocol , 하이퍼 텍스트 전송방식) HTTP란 웹서버와 클라이언트 간의 문서를 교환하기 위한 통신 규약입니다. Transfer라는 해석 그대로 데이터를 전송하겠다라는 의미로 앞에 Hypertext 가 붙은 이유는 하이퍼텍스트 기반으로 데이터를 전송하겠다는. 간단히 말해서 링크기반으로 데이터에 접속하겠다는 의미. World Wide Web(WWW)의 분산되어 있는 Server와 Client 간에 Hypertext를 이용한 정보교환이 가능하도록 하는 통신 규약이다. HTTP는 웹에서만 사용하는 통신 규약으로 TCP/IP 기반으로 한 지점에서 다른 지점 (보통 클라이언트와 서버)으로 요청과 응답을 전송한다. 1989년 Tim Berners Lee..