분류 전체보기

WWW란? WWW(World Wide Web, W3)는 인터넷에서 정보를 공유하고 접근할 수 있는 시스템이다. 흔히 웹(Web)이라고 부르며, 전 세계적인 정보 공간을 일컫는다. 문서, 사진, 비디오 등의 정보가 하이퍼텍스트(Hypertext)로 연결되어 있으며, 하이퍼링크(Hyperlink)를 통해 다른 웹 페이지로 넘어갈 수 있다. 웹의 특징 분산된 정보 : 전 세계의 컴퓨터 네트워크에 연결된 다양한 서버에 분산된 정보를 의미하며, 각각의 정보는 웹을 통해 접근할 수 있다. 하이퍼텍스트와 하이퍼링크 : 웹의 정보는 하이퍼텍스트로 이루어져 있으며, 텍스트나 문서, 사진 등이 링크로 이루어져 있음을 의미한다. 검색과 탐색 : 웹 브라우저를 통해 검색 엔진을 사용하여 정보를 찾을 수 있으며, 하이퍼링크를 ..
HTTP란? HTTP는 HyperText Transfer Protocol의 약자로, 네트워크에서 데이터를 주고 받을때 필요한 통신 규약을 의미한다. 클라이언트와 서버 간 데이터를 교환하기 위한 표준 프로토콜로, 주로 웹 브라우저와 웹 서버 사이에 사용된다. 일반적으로 클라이언트 시스템에서 서버에 요청한 다음, 서버에서 응답 메시지를 보내는 것이 포함된다. HyperText : hyper(건너편의, 초월, 과도한)와 text의 합성어로, 다른 텍스트로 연결되어 있는 텍스트로를 의미한다. 일반적인 텍스트와는 달리 다른 문서, 이미지, 비디오 등의 다른 매체와도 연결이 가능하다. 이를 통해 하이퍼링크로 연결된 다른 문서를 따라가며 관련 정보를 쉽고 빠르게 접근할 수 있다. Protocol : 송수신간의 데이터..
원형 큐란? 원형 큐(Circle Queue)는 큐의 한 형태이다. 큐를 배열로 구현을 하게 될 경우, 데이터를 삭제하게 되면 삭제한 부분은 더 이상 사용할 수 없다. 이 경우 삭제를 배열 끝까지 하게 되면 그 큐는 더 이상 사용할 수 없게 된다. 이때 사용하는 것이 바로 원형 큐이다. 원형 큐의 특징 원형 큐의 경우, 일반적으로 배열로 구현한다. 원형 큐는 배열의 앞과 끝을 이어 배열에 끝에 도달했다면 다시 처음으로 되돌아오는 큐를 의미한다. 배열의 앞을 가리키는 변수(front)와 배열의 끝을 가리키는 변수(rear)를 통해 데이터를 삽입하고 삭제한다. 데이터를 삽입할 때마다 rear가 한 칸 증가한다. 데이터를 삭제하면 front가 한 칸 증가한다. 만일 rear가 배열의 끝에 도달했는데, 배열의..
큐란? 큐(Queue)는 데이터를 일렬로 나열한 선형구조로 되어있다. 일시적으로 데이터를 저장하고 처리할 때 사용되며, 다양한 컴퓨터 애플리케이션에 사용된다. 나중에 들어간 데이터가 가장 먼저 나오는 스택과는 반대되는 개념이다. 큐의 특징 먼저 들어간 데이터가 먼저 나오는 선입선출(FIFO, First In First Out)구조로 이루어져있다. 큐가 꽉차서 데이터를 더 넣을 수 없는 상태를 오버플로우(Overflow), 큐가 비어있어서 더 꺼낼 수 없는 상황을 언더플로우(Underflow)라고 한다. 큐는 상황에 따라 배열을 사용해서 구현할 수도, 연결리스트를 이용해서 구현할 수도 있다. 큐의 연산은 삽입, 삭제, 맨 앞의 데이터 읽기, 큐가 비어있는지 확인, 큐의 사이즈 확인, 검색이 있다. 큐의 시..
스택이란? 스택은 프로그래밍에서 자주 쓰이는 자료구조 중 하나이다. 이름에서 알 수 있듯이 데이터를 쌓으며 사용하는 자료구조이다. 스택의 특징 스택은 나중에 넣은 값이 가장 먼저 나온다는 후입선출(LIFO, Last-In-First-Out) 형식의 선형 자료구조이다. 스택은 데이터를 한쪽으로만 넣을 수 있으며, 중간에 있는 데이터를 삭제할 수는 없다. 배열, 또는 연결리스트로 구현이 되어 구현하기 쉽다. 스택은 한정된 용량을 갖고있어, 저장 용량보다 초과하여 데이터를 저장할 경우 스택 오버플로우(Stack Overflow)가 발생한다. 함수 호출, 오류 발생 시 디버깅 역추적(Traceback) 할 때 도움을 준다. 스택의 연산은 삽입, 삭제, 읽기로 이루어진다. 시간복잡도 삽입(Push) 스택의 최상단..
배열이란? 배열은 프로그래밍에서 데이터를 저장하는 데 사용되는 자료구조이다. 배열의 특징 동일한 타입의 데이터를 연속된 메모리의 공간에 순차적으로 저장하는 선형 자료구조 형태이다. 배열은 선언할 때 크기를 정하면 그 크기로 고정되며, 선언된 크기는 배열을 다시 선언하지 않으면 변경할 수 없다. 배열의 연산은 크게 접근, 추가, 삭제, 검색으로 이루어진다. 시간복잡도 접근(Access) 배열은 인덱스로 접근을 하게 된다. 배열의 첫 번째 인덱스의 주소는 기본적으로 알고 있기 때문에, 원하는 인덱스를 접근하는 방법은 [첫 번째 인덱스의 주소 + (자료형의 크기) * 접근하고자 하는 인덱스] 한 주소에 접근하면 된다. 따라서 시간복잡도는 O(1)이다. 삽입(Insertion) 배열의 시작 부분에 삽입을 할 때..
객체 지향 프로그래밍(Object-Oriented Programming, OOP)이란, 여러개의 객체 단위로 이루어지는 컴퓨터 프로그래밍을 의미한다. 컴퓨터 프로그래밍을 순차적인 명령어의 목록으로 보는 것이 아닌, 여러가지의 객체를 조합하여 객체들 간의 상호작용을 통해 프로그램을 구축하는 방식이다. 객체 지향 프로그래밍이 나오게 된 이유 이전의 프로그래밍은 절차 지향 프로그래밍(Procedural Programming)이다. 절차(프로시저)는 프로그래밍에서 일렬의 동작 단위로, 매개변수를 받아들이고 작업을 수행 후에 결과를 반환한다. 이때 프로시저와 함수의 차이점은 프로시저는 반환값이 없고, 함수는 반환값이 있다. 절차 지향 프로그래밍은 코드를 모듈 단위로 구성하여 작업한다. 이는 반복되는 작업을 모듈화..
비선형 자료구조(Non-Linear)는 데이터의 요소들이 계층적인 관계를 가지거나 순차적으로 연결되지 않는 자료구조를 말한다. 비선형 자료구조는 계층적인 관계이기에 효율적인 탐색을 할 때 사용한다. 비선형 자료구조의 내부 데이터들은 하나의 데이터 뒤에 여러개의 데이터가 붙을 수 있어 1:N 또는 N:N의 관계를 가진다. 비선형 자료구조의 종류는 다음과 같다. 트리 그래프 힙 출처 : 자료구조 정의와 종류
자료구조(資料構造, Data Structure)는 컴퓨터 과학에서 데이터를 효율적으로 조작, 저장 및 관리하기 위한 방법이나 구조를 의미한다. 자료구조를 효율적으로 사용하는 것은, 보다 효율적인 알고리즘을 사용할 수 있게 한다. 상황에 맞는 자료구조를 사용한다면, 실행시간 혹은 메모리 용량과 같은 자원을 최소한으로 사용하면서 연산을 도와준다. 자료구조에는 형태에 따라 선형 자료구조와 비선형 자료구조로 나뉘게 된다. 출처 : 자료구조 위키백과, 이미지 출처
선형 자료구조(Linear Data Structure)는 데이터가 일렬로 연결되어 있는 자료구조를 얘기한다. 선형 자료구조는 데이터를 순차적으로 저장하고 접근하는데 사용한다. 선형 자료구조의 내부 데이터들은 하나의 데이터 뒤에 하나의 데이터가 오는 1:1의 관계를 가진다. 선형 자료구조의 종류는 다음과 같다. 배열 스택 큐 환형 큐 덱 연결리스트 이중 연결리스트 출처 : 자료구조의 정의와 종류
podory
'분류 전체보기' 카테고리의 글 목록 (5 Page)