본문 바로가기

Programming184

Linked List와 STL List 해당 게시글은 '바킹독의 실전 알고리즘 강의'를 학습한 후 개인적으로 정리한 내용임을 밝힙니다.[출처] https://blog.encrypted.gg BaaaaaaaarkingDog blog.encrypted.gg 1. Linked List정의노드들이 포인터로 연결된 구조각 노드는 데이터와 다음 노드를 가리키는 포인터를 포함 유형① 단일 연결 리스트 (Singly Linked List) ② 이중 연결 리스트 (Doubly Linked List) ③ 원형 연결 리스트 (Circular Linked List) 시간 복잡도임의의 위치에 접근/변경 : O(n)임의의 위치에 삽입/삭제 : O(1) (추가하고 싶은 위치의 주소를 알고 있는 경우) 장점동적으로 크기 조절 가능 → 메모리 낭비 적음 (필요 시 할당.. 2025. 6. 17.
Array와 STL Vector 해당 게시글은 '바킹독의 실전 알고리즘 강의'를 학습한 후 개인적으로 정리한 내용임을 밝힙니다.[출처] https://blog.encrypted.gg BaaaaaaaarkingDog blog.encrypted.gg 1. Array정의연속된 메모리 공간에 동일한 타입의 데이터를 저장하는 자료구조 시간 복잡도임의의 위치에 접근/변경 : O(1)맨 끝에 원소를 추가 : O(1)맨 마지막 원소를 제거 : O(1)임의의 위치에 삽입/삭제 : O(n) 특징고정 크기논리적 저장 순서 = 물리적 저장 순서 장점빠른 인덱스 접근 (Random Access)메모리 접근이 효율적추가적으로 소모되는 메모리의 양 (=overhead)가 거의 없음Cache hit rate가 높음 단점크기 변경 불가임의의 위치에 삽입/삭제 시 .. 2025. 6. 17.
[Network] 네트워크 계층 해당 게시글은 '면접을 위한 CS 전공지식 노트' 도서를 학습한 후 개인적으로 정리한 내용으로 구성함을 밝힙니다. 1. 계층 구조 OSI 7계층 vs. TCP/IP 계층 2. TCP/IP 4계층2.1. 응용 계층 (Application Layer)응용 프로그램이 사용되는 프로토콜 계층웹 서비스, 이메일 등의 서비스를 사용자에게 제공 FTP 장치와 장치 간의 파일 전송 프로토콜 SSH 보안이 없는 네트워크에서 네트워크 서비스를 안전하게 운영하기 위한 암호화 네트워크 프로토콜HTTP World Wide Web을 위한 데이터 통신 기초SMTP 전자 메일 전송을 위한 인터넷 표준 통신 프로토콜DNS 도메인 이름과 IP 주소를 매핑해주는 서버 2.2. 전송 계층 (Transport Layer.. 2025. 4. 16.
[Network] 네트워크 기초 해당 게시글은 '면접을 위한 CS 전공지식 노트' 도서를 학습한 후 개인적으로 정리한 내용으로 구성함을 밝힙니다. 네트워크컴퓨터 등의 장치들이 통신 기술을 이용하여 구축하는 연결망노드(node)와 링크(link)가 서로 연결되어 있으며, 리소스를 공유하는 집합노드 : 서버, 라우터, 스위치 등의 네트워크 장치링크 : 유선 또는 무선 1. Throughput과 Latency좋은 네트워크의 조건많은 처리량을 처리 가능지연 시간이 짧음장애 빈도가 적음보안성이 좋음 처리량 (Throughput)정의링크 내에서 성공적으로 전달된 데이터의 양처리량 vs. 트래픽트래픽 : 특정 시점에 링크 내에 흐르는 데이터의 양트래픽이 많아졌다 = 흐르는 데이터가 많아졌다처리량이 많아졌다 = 처리되는 트래픽이 많아졌다단위bps (.. 2025. 4. 16.
[클라우드 기반 시스템 운영 & 구축 실무] Terraform 1. Terraform이란?1.1. IaC (Infrastructure as Code)수작업으로 수행하던 인프라 구축을 코드(정의 파일, 명령어 등)를 사용하여 수행하는 방법IaC를 이용하면 작업 공수의 절감, 작업 품질의 향상 효과를 가져올 수 있다. 1.2. TerraformIaC 도구의 한 종류로, 아래의 구조로 동작한다.  2. Terraform 실습2.1. Terraform 설치 (Windows 기준)Install | Terraform | HashiCorp Developer Install | Terraform | HashiCorp DeveloperExplore Terraform product documentation, tutorials, and examples.developer.hashicorp.. 2025. 4. 11.
[클라우드 기반 시스템 운영 & 구축 실무] 로그 수집 및 분석 1. CloudWatchEC2와 같은 리소스로부터 생성된 로그를 Watch로 수집리소스(CPU, Memory, HDD 등)의 사용량 정보를 수집 1.1. CloudTrail vs. CloudWatch사용자 행위 정보 로그 (로그인, 로그아웃, 정책생성 등) : CloudTrail시스템 행위 정보 로그 (EC2, RDS 등) : CloudWatch 1.2. CloudWatch 실습(1) IAM > Role > Create Role EC2CloudWatchAgentServerPolicy (2) IAM > User > Security Credential > Access Key 생성  (3) EC2 환경 설정 3-1) EC2 생성3-2) IAM Role 연결 3-3) 다운로드 yum install httpd -.. 2025. 4. 11.
[어플리케이션 보안] SQL Injection과 SQLMAP 1. SQL InjectionSQL 주석을 통해 쿼리를 우회하는 방식을 사용 1.1. 주석 유형MySQL : #Oracle, MS-SQL, SQLITE3 : -- 1.2. 취약점 점검간편하게 SQL Injection 적용 가능 여부를 확인하려면 ' 하나를 찍어보면 된다.ex) password에 ' 넣어보기  1.2.1. Login Form 이용(1) 일반 쿼리문select id, pw from user where id = 'admin' and pw = 'password';  (2) 공격문- 'or 1=1# 또는 'or 1=1-- 을 사용함- pw 부분은 주석 처리가 되어버림 where id = ' 'or1=1# ' and pw = 'password';  1.2.2. 게시판 검색 이용(1) 일반 쿼리문se.. 2025. 4. 11.
[Ruby] Ruby 20분 가이드 * 해당 게시글은 Ruby 공식 문서를 바탕으로 학습한 후 개인적으로 정리한 내용을 담고 있습니다.https://www.ruby-lang.org/ko/documentation/quickstart/ Ruby 20분 가이드소개 이 문서는 20분 정도면 따라 해볼 수 있는 간단한 Ruby 튜토리얼입니다. 이 튜토리얼을 따라 하기 위해서는 컴퓨터에 Ruby가 설치되어 있어야 합니다. (아직 Ruby가 설치되어 있지 않다면, 시작www.ruby-lang.org 1. 출력Ruby는 데이터를 화면에 출력할 때 puts라는 메서드를 이용한다. irb(main):002:0> puts "Hello World"Hello World=> nil  2. 계산간단한 Ruby의 수 계산 연산자는 아래와 같다.특히 제곱근을 구할 때 .. 2025. 2. 1.
[Ruby] Ruby에 대해서 * 해당 게시글은 Ruby 공식 문서를 바탕으로 학습한 후 개인적으로 정리한 내용을 담고 있습니다.https://www.ruby-lang.org/ko/about/#fn2 Ruby에 대해서Ruby가 왜 인기 있을까요? Ruby의 팬들은 아름답고 기교가 뛰어난 언어이기 때문이라고 말합니다. 하지만 이 말로는 부족하지요. 어떤 점이 Ruby를 이처럼 매력적인 언어로 만드는 것일까요? Ruby를www.ruby-lang.org  Ruby에 대해서공식 문서에 따르면 Ruby의 팬들은 아름답고 기교가 뛰어난 언어이기 때문에 Ruby가 인기있다고 말한다고 한다. 자고로 프로그래밍 언어의 공식 문서들은 매우 딱딱하고 노잼인 것이 국룰인데, 자칭 프로그래머의 단짝 친구 Ruby의 공식 문서는 아주 사심이 가득해보인다ㅋㅋ .. 2025. 2. 1.