정보처리기사 관련 개념 정리 6

관계대수와 관계해석에 대하여...

이번 주제는 관계대수와 관계해석입니다.일단 먼저 관계대수라는 단어의 뜻부터 알아보자면,  관계대수란?  일단 '관계대수' 라는 말 자체는  컴퓨터과학에서만 쓰이는 용어입니다.   관계대수는  관계형 데이터베이스의 관계 모델에서  '집합론' 과 '1차 논리' 에 기반해서  관계표로 표현된 데이터를 취급하는  대수적인 연산 체계를 말합니다.   말이 너무 어려운데,  쉽게 얘기해서 우리가 어떤 형식의 표를 작성하면,  그 표에 입력된 항목과  각 항목에는 임의의 값들이 존재하는 형식으로 작성할 것인데,  이러한 항목이나 값, 또는 표 자체를 데이터로 취급하고,  이 데이터들이 어떤식으로 서로 연관됐는지를  표현하기 위해 만들어진 연산자 라고 생각하시면 됩니다.   예시 1)  번호이름나이연봉(억)팀명7손흥민..

페이지 교체 알고리즘에 대하여...

시작하기에 앞서,오늘 내용 설명에 필요한 단어들 먼저 간단히 설명 하겠습니다.  중앙처리장치 (CPU : Center Processing Unit) :  컴퓨터의 중심에서 모든 데이터 처리를 담당하며,  컴퓨터의 두뇌 역할을 수행하는 장치입니다.   주기억장치 (Computer Memory, Primary Memory) :  CPU 가 일하기 위해 쓰는 업무 공간입니다.ROM (Read Only Memory) :        읽기 작업만 가능하며 비휘발성 메모리라        전원이 꺼져도 데이터가 그대로 유지됩니다.        부품 제조 단계에서 시스템에 입력하고,        변화되면 안되는 데이터를 보관하는 장소입니다.        예) BIOS 데이터.RAM (Random Access Memor..

트리에 관하여...(개요, 용어, 종류, 이진 트리의 종류, 이진 탐색 트리, 트리 운행법, 수식 표기법)

*글을 시작하기에 앞서, 이 글은 자료구조로써의 트리만을 다루고, 정처기 시험용으로써 기본적인 것만 설명함을 알려드립니다. 트리(Tree) 란? 트리는 점 (Node) 과 선분 (Branch) 으로 이루어진, 사이클을 이루지 않는 그래프 형태를 말합니다. 아래 그림에 보이듯이 트리는 여러개의 갈래로 뻗어나가는 비선형 구조입니다. 사이클이란, 말그대로 순환하는 형태를 말하고, 노드는 각자 별개의 기억공간이며, 노드를 연결하는 브랜치를 링크(Link) 라고도 합니다. 트리의 용어들 정리. 아래 그림으로 나타내 보았습니다. 그림에 깜빡하고 안썼는데, Level 은 트리의 각 단계를 말하고, 4 가 가장 아래이므로 트리의 깊이가 됩니다. 또한 트리의 크기 (Size) 를 묻는다면, 노드의 총 개수를 말합니다. ..

정렬에 관하여... (삽입, 선택, 버블, 셸, 퀵, 합병, 힙, 기수)

이 글은 알고리즘과 정보처리기사 두가지 모두 해당하는 글입니다. 정렬 알고리즘은, 시간복잡도, 구현복잡도, 메모리사용량 등으로 효율성을 따질 수 있는데, 이 중 나머지는 큰 의미가 없고 주로 시간복잡도로만 그 효율성을 따집니다. ※글을 읽는 분께는 죄송하지만, 이 글은 토론 및 발표 때 참고자료용으로 작성한 거라, 작성자가 직접 말로 설명하는 부분이 많아서, 그림만 보고는 이해가 어려울 수도 있습니다. 삽입정렬 (Insertion Sort) 최적 시간복잡도 : O(n) 평균 시간복잡도 : O(n²) 최악 시간복잡도 : O(n²) 가장 구현하기 쉬운 정렬법의 하나입니다. 매 회전마다 각 자릿수의 인덱스와, 각 자릿수보다 앞선 인덱스를 처음부터 순서대로 비교해서, 더 작은 수를 맞는 위치에 삽입하는 방식으로..

미들웨어 솔루션 명세

"미들웨어" 란? 미들웨어 (Middleware) 란, Middle (중간) 과 Software 의 합성어로, 쉽게 얘기하면 말 그대로 중간다리 역할의 소프트웨어입니다. 자세히 말하자면, "분산 컴퓨팅 환경"에서 서로 다른 기종간의 하드웨어나, 프로토콜, 통신 환경 등을 연결하여, "운영체제" "운영프로그램" , 또는 "서버" "클라이언트" 사이에서 원만한 통신이 가능하도록 다양한 서비스를 제공하는 것. 을 말합니다. "분산 컴퓨팅 환경 (DCE : Distributed Computing Environment) 이란, 말 그대로 하나의 컴퓨터에 모든 연산 (Compute) 을 맡기지 않고, 다수의 컴퓨터끼리 네트워크로 연결해 "매우 큰 작업을 효율적으로 나눠하기 위한 환경" 입니다. 같은 개념 : 분산 ..

디자인 패턴

디자인 패턴이란? 디자인 패턴은 아키텍쳐 패턴에서 좀 더 하위로 내려와서 비슷한 개념을 수행하는 것을 말합니다. 아키텍쳐 패턴이나 디자인 패턴이나 마찬가지로 구체적인 작업을 만들거나 수행하기 전에 큰 윤곽을 잡는 것이라고 생각하면 됩니다. 둘 간의 차이점. 아키텍쳐가 전체 시스템의 구조를 설계하는 것이라면, 디자인 패턴은 서브시스템과 모듈들 사이의 관계를 설계하는 것입니다. 디자인 패턴이 좀 더 하위고 구체적이지만, 실제 구체적인 동작을 설계하는 것은 아니고, 구체화를 어떻게 할 것인지를 설계한다고 생각하면 됩니다. ""디자인 패턴이 생긴 이유. 원하는 방향성과 큰 틀을 잡지 않고 하나하나 만들기 시작하는 것은, 어떤 산이 바위와 나무없이 흙과 잔디로만 채워지는 것과 비슷합니다. 아주아주 비생산적입니다...