본문 바로가기

IT

(30)
[이산수학] 집합 집합 1. 집합(Set, { }) 집합이란 객체들의 모임을 의미합니다. 그리고 이때 객체들을 원소(element)라고 합니다. 집합은 중복되는 원소를 허용하지 않으며, 별도 순서가 없습니다.(중요!) 표현 기호로는 { }를 사용하며, 집합과 원소간 포함 관계는 ∈과 ∉ 를, 집합과 집합간 포함 관계는 ⊂, ⊄, ⊆ 등를 사용합니다. 또한, S의 원소 개수는 |S|로 표현할 수 있습니다. if, S = {a, b} and T = {a} then, a ∈ S and T ⊂ S 2. 공집합(Empty set, ∅) 공집합은 어떤 원소도 포함하지 않는 집합을 의미합니다. 표현 기호로는 ∅를 사용하며, 비어있는 중괄호 { }로도 표현할 수 있습니다. 그리고 공집합은 모든 집합의 부분집합이기도 합니다.(모든 집합의..
[이산수학] 명제와 논리 명제와 논리 1. 명제(Proposition) 명제는 참(T, true)이나 거짓(F, false) 중 하나로 판별될 수 있는 문장을 의미합니다. 그리고 이러한 참과 거짓을 해당 명제의 진리값(truth value)라고 합니다. 2. 명제논리(Propositional Logic) 명제논리는 명제를 기본 단위로 삼고, 명제 간의 논리적 관계를 다룹니다. 2.1. 논리연산 & 논리연산자 논리학은 명제 간 논리적 관계에 대한 연구를 진행하며, 그 행위를 논리연산(logical operation)이라 합니다. 논리연산은 논리연산자(logical operator)를 통해 표현할 수 있으며, 연산을 위한 보조수단으로 진리표(truth table)를 활용합니다. 기본적인 논리연산에는 논리합, 논리곱, 부정, 배타적 ..
[이산수학] 이산수학? 이산수학? 1. 이산수학이란? 이산수학(Discrete Mathematics)은 연속적이지 않고 분리된 개체를 다루는 수학의 한 분야입니다. 연속적인 개체에는 실수 등이 있을 것이고, 연속적이지 않는 개체에는 정수, 논리 연산, 그래프 등이 있습니다. 이는 컴퓨터와 같은 디지털 시스템에서 발생하는 문제들을 모델링하고 해결하기 위해 중요한 역할을 하기 때문에 컴퓨터 과학, 정보 이론, 알고리즘 이론 등과 관련이 깊습니다. 이산수학은 아래와 같은 주제들을 포함합니다. 집합 집합과 그 연산에 대한 연구로, 이산수학의 기초를 이룹니다. 그래프 그래프와 그래프의 속성, 경로, 순환 등을 다룹니다. 그래프 이론은 네트워크, 논리 회로 설계, 전자상거래 등 다양한 분야에서 응용됩니다. 논리 명제와 그것들 간의 논리적..
[공부] 비전공자 컴퓨터공학 독학하기 비전공자 컴퓨터공학 독학하기 1. 컴퓨터공학? 컴퓨터공학(Computer Science)은 컴퓨터 및 컴퓨터 시스템과 관련된 이론적 및 기술적인 측면을 다루는 학문 분야입니다. 컴퓨터와 소프트웨어, 정보 시스템, 알고리즘, 데이터 구조, 인공 지능, 네트워크, 컴퓨터 아키텍처, 소프트웨어 공학 등 다양한 주제를 다루고 있으며, 컴퓨터 공학자는 컴퓨터 기술을 사용하여 현실 세계의 다양한 문제를 해결하고 새로운 기술 및 시스템을 개발하는 데 중요한 역할을 합니다. 컴퓨터공학은 다양한 분야로 나누어지며, 일반적으로 이러한 분야들은 다음과 같은 내용을 다룹니다. 알고리즘 및 자료 구조 효율적인 문제 해결을 위한 알고리즘과 데이터 구조에 대한 연구 및 개발을 합니다. 소프트웨어 공학 소프트웨어 개발 과정에서의 설..
[GCP] Compute Engine을 PuTTY로 연결 Compute Engine을 Putty로 연결 1. 왜 필요한가? 사실 GCP 자체에서 브라우저를 통한 SSH 연결을 지원해 주기 때문에 반드시 필요한 작업은 아닙니다. 그렇지만 매 사용시마다 GCP를 접속해서 VM 인스턴스 메뉴를 들어가서 사용하는 것은 때때로 귀찮은 작업입니다. 이를 해결하기 위해 Windows에서 사용하는 편리한 원격 접속 프로그램을 통해 편하게 개발환경을 사용하려는 목적입니다. 2. 사전 준비 2.1. GCP Compute Engine VM 인스턴스 GCP Compute Engine 서비스로 생성한 VM 인스턴스가 필요합니다. 없다면 포스팅을 참고합니다. 2.2. PuTTY PuTTY는 SSH, SFTP, Telnet 등 다양한 프로토콜 연결을 지원하는 대표적인 원격 접속 프로그램..
[GCP] Compute Engine Compute Engine1. GCP Compute Engine?Compute Engine은 GCP의 Computing 서비스 중 하나입니다. Compute Engine은 GCP 내에서 가장 범용적인 인프라(VM)를 제공합니다. 사용자가 원하는 지역(Region), OS, CPU, GPU, Memory, 방화벽 등 다양한 요소를 자유롭게 설정하여 생성할 수 있으며, 자주 사용하는 스펙은 템플릿으로 지정하여 사용할 수 도 있습니다. 2. Compute Engine 비용GCP의 대부분 서비스들은 제한된 스펙(지역, 리소스 등)으로 무료 서비스를 제공합니다. GCP 공식 페이지에 따르면 Compute Engine은 다음과 같은 조건으로 무료 서비스를 제공한다고 합니다. (자세한 정보는 링크에서 참고 가능합니다..
[GCP] 결제 계정 관리 결제 계정 관리 1. 결제 계정 생성 GCP 프로젝트를 만들고 각종 서비스를 사용하기 위해서는 결제 수단을 등록해야 합니다. [결제] 메뉴에 들어갑니다. (프로젝트를 아직 만들지 않으셨다면 포스팅 참고.) 만약 기존 등록한 결제 계정이 없었다면 "결제 계정이 없는 프로젝트"라는 메시지를 접할 수 있고, 아래에 위치한 [결제 계정 연결]을 클릭하면 "활성 결제 계정 없음" 메시지를 확인할 수 있습니다. [결제 계정 관리]을 클릭하여 결제 계정 관리 페이지로 이동합니다. 이동한 페이지에서 [계정 만들기]를 클릭하여 계정을 생성할 수 있는 페이지로 이동합니다. 계정 이름을 적당히 입력한 뒤 [계속]을 눌러 이동합니다. 이제 아래 입력란들을 본인에게 맞는 유형으로 결제 계정 프로필을 기입하고 [계속]을 클릭합니..
[GCP] Google Cloud Platform Google Cloud Platform 1. Google Cloud Platform? Google Cloud Platform(이하 GCP)은 구글에서 컴퓨팅 리소스, 스토리지, 네트워크, 빅데이터 서비스 등을 제공하는 클라우드 컴퓨팅 서비스입니다. GCP가 제공하는 클라우드 서비스는 Google Cloud 제품에서 확인하실 수 있으며, 사용자는 각 서비스를 조합하여 원하는 애플리케이션을 개발할 수 있습니다. 2. GCP 리소스 계층 구조 GCP는 리소스를 계층 구조로 관리합니다. 계층은 "조직-폴더-프로젝트"로 구성되어 있습니다. 조직 조직은 모든 리소스를 중앙에서 관리할 수 있도록 합니다. 모든 프로젝트, 관리자 등 권한 정보들이 중앙에서 관리되기 때문에 누락되는 경우를 제어할 수 있으며, 조직에서 정..