
📞 HTTP 0.9 1.0 1.1 2.0인파님의 블로그와 여러가지 구글링을 통해서 정리한 글입니다.HyperText Transfer Protocol원래는 HTML 문서를 전송하기 위한 통신 프로토콜.클라이언트와 서버간의 이루어지는 상호대화를 위한 요청-응답 프로토콜.HTTP 0.9가장 단순한 형태로 HTML문서를 GET하기위한 용도였다.상태코드도 없고 헤더가 없다.HTTP 1.0GET, HEAD, POST 3개의 메소드가 존재했다.0.9와 다르게 인터넷 세상이 발전하면서 단순한 HTML 문서 뿐만아니라 여러 형태의 데이터들이 많아지면서 등장하게되었다.요청,응답의 헤더가 존재 상태코드가 존재함, 상태코드로 클라이언트 사이드에서 처리 가능단기 커넥션 문제HTTP 1.0은 Connectionless 비연결성..
📲 SocketSocket이란?서버와 클라이언트의 IP 주소, 포트 번호, 연결 상태 등을 기록해놓은 하나의 파일이다.소켓은 프로세스 간 통신을 위한 인터페이스로, 네트워크 상에서 데이터를 주고받기 위한 소프트웨어 객체입니다. 각 클라이언트와 서버가 소켓을 통해 데이터를 송수신하며, 각 클라이언트는 고유한 소켓 객체를 생성하여 서버와 연결을 유지합니다.소켓은 프로세스 간 통신에 사용되는 양쪽 endpoint이다.📞 소켓을 설명하는 비유: 전화 통화전화기전화기(소켓)는 통신을 위한 도구입니다. 두 사람이 전화 통화를 하려면 서로 전화기를 가지고 있어야 하듯이, 소켓도 통신을 위해서 필요한 도구입니다. 각 전화기에는 고유의 번호(IP 주소 + 포트 번호)가 있어, 다른 사람과 통화하려면 이 번호를 알아야..
https://www.acmicpc.net/problem/3860 🤔 풀기 전의 문제에 대한 생각☑️ 문제를 읽으며문제를 읽고 생각한 것은 좌표를 간선을 이용해서 연결하여 그래프로 만들자 였다.BFS에서 4방향으로 이동하는 것을 간선을 통해서 표현하고벨만 포드 알고리즘을 통해서최단거리를 구하려 했다.문제 자체도 계속해서 과거를 돌아가는 것을 출력하라고 하기에대놓고 벨만 포드 문제라고 생각했다. 물론 해당 문제를 가지고 플로이드는 실행하지 못한다. N 이 900가 되기에 3제곱이 되면 시간복잡도가 무조건 터진다.핵심결국 이 문제의 핵심은 개인적으로 바라볼때 구현력이다.좌표를 간선으로 연결해서 그래프로 만드냐이 부분에서 나는 처음에 가로 → 이 방향과 세로 위 방향을 순회하면서연결시켰지만 끝내 오류가 계..
🤔 풀기 전의 문제에 대한 생각☑️ 문제를 읽으며주어진 STR 문자 배열을 사용해서 최솟값으로 원하는 문자열을 완성처음 봤을때 아예 생각이 떠오르지 않는 문제생각한 추상적인 접근법접근법1. 해당 문자열의 자릿수의 DP문자열이 주어졌을때 apple이라고 치면 a까지의 가능한 최솟값을 기준으로주어진 STRS 문자열 배열을 SET으로 전환시켜 contains 확인하는 식으로 가면 어떨까??2.문자열의 시작을 찾는다.우선 문자열의 시작을 이룰수 있는 문자열을 찾는다.N번 순회해서 시작을 이룰수 있는 문자열 찾기시작을 이루는 문자열을 기준(최대 100개)잡기남은 문자열을 기준으로 문자열을 잘라가면서 set에 contains인지 확인작성하다보니 둘다 안되는 것같다.🥸단순하게 생각하자DP는 결국 점화식을 구해서 ..
🤔 풀기 전의 문제에 대한 생각☑️ 문제를 읽으며뭔가 BFS에서는 이런 문제 유형이 따로 있지 않을까 생각이 든다..기본 상황모든 칸을 방문 상 하 좌 우 한칸씩 -> 칸의 높이차가 Height 이하 Height보다 많이 나면 사다리 설치 => 비용 : 높이 차만큼 최소 비용 -> BFS 사다리 갯수 제한 x 철거도 x 재사용이 가능하지 않을까? 어딘 가를 갈때 다른 곳을 경우해서 가능한 곳이면 사다리 안써도 된다.우선 처음에 BFS 를 해서 사다리를 쓰지 않고 방문 가능한 곳 찾기.그 후 사다리를 이용해서 가능한 곳을 찾아야 되지 않나.문제 풀이1 . cost 로 오름차순 정렬→ 이거 시도 중 (메모리터짐)cost로 오름차순 정렬해서 방문할 순서를 정한다즉 cost가 작은 것부터 우선순위 큐에서 뽑아..
알고리즘 : 최소비용신장트리 최소비용신장트리를 완성해가는 데 union find 알고리즘을 사용해서 사이클을 피하는 방식이다.Find에서 경로압축을 진행한다. 처음에 루트를 찾아가는 find함수에서 루트노드까지 재귀로 찾아가고나중에 return 되면 자식 노드들의 부모가 전부 루트노드로 갱신되며 추후의 탐색비용이 줄어드는 경로압축이 진행된다. find함수로 루트 노드를 찾아 다를 경우 union한다.이 과정에서 간선 사이 비용을 오름차순으로 정렬하여, 최솟값을 선택하면서 계속한다.최종적으로 간선의 수가 n-1 개일 경우 트리가 완성되었으므로 break한다. 문제설명https://school.programmers.co.kr/learn/courses/30/lessons/42861 프로그래머스SW개발자를 위한..
알고리즘 : 유니온 파인드 유니온 파인드는 말그대로 합치기와 탐색입니다.여기서 상호 배타적인 집합 관계가 나옵니다. 말 그대로 둘이 어떠한 교집합도 없는 집합입니다.그래프로 생각하면 둘이 완전히 분리된 그래프 인거죠. 파인드는 자기 자신의 부모로 계속 올라가서 루트 노드까지 가는 과정이고 여기에서 만약 서로 다른 두 점을 파인드 했는데 루트 노드가 같을 경우는 이미 같은 집합 인것이고다를 경우는 다른 집합인 것이겠죠 유니온은 말 그대로 두 집합을 합치는 과정인데 여기서 중요한 게 깊이 차이를 신경써야됩니다.그냥 막무가내로 붙여버리면 깊이가 깊어져서 비효율적이게 됩니다.그래서 두 루트노드의 랭크를 확인해서 더 큰 랭크인 루트노드를 부모 루트 향하게 작은 랭크의 루트노드를 바꿔주면 트리의 깊이 차가 안생기므..

면접/IT역량테스트에 앞서서 CS지식을 한번에 총 정리하기 위해서 한번에 정리하기로 작성하게 되었습니다.면접 질문의 답을 작성하기 보단 면접 질문에 나오는 내용들의 개념을 정리해서 이해함으로 외워서 답을 하는 것이 아니라 이해로 인해서 자연스럽게 나오도록 하기위해 정리하는 글입니다. 제가 공부하면서 얻은 파편화된 지식을 모아서 정리하는 용도로 한번에 다 담기위해서 노력했습니다. 잘봐주세용 추가로 작성하지 않는 부분은 계속해서 업데이트하면서 작성할 예정입니다. 본 글은 유튜버 "쉬운 코드"님의 데이터 베이스강의를 참고하여 작성한 글입니다.해당 강의를 들어 보는 것을 추천드립니다. 허락을 받고 작성하는 블로그 입니다. https://www.youtube.com/@ez. 쉬운코드10년차 백엔드 개발자가 배워..

1. 소스 코드와 명령어2. 명령어의 구조 1. 소스 코드와 명령어 컴퓨터는 명령어를 처리하는 기계이고, 2장의 데이터에서 봤던 것처럼, 0과 1로 이루어진 정보만 이해할 수있습니다.그런데 우리는 소스코드를 0과1로 작성하지 않습니다.우리가 작성한 소스코드가 컴퓨터 내부에서 명령어로 변환 되는 것이죠 ✏️고급 언어, 저급 언어 High Level에서 사람의 입장에서 컴퓨터에게 명령을 내리기위한 언어가 고급 언어입니다.컴퓨터가 직접 이해하고 실행하는 언어가 저급언어이고,저급언어는 명령어로 이루워져있고, 고급언어는 무조건 저급언어로 변환이 되어야 컴퓨터가 실행 할 수있습니다.저급언어는 기계어와 어셈블리어 두 가지 종류가 있고, 기계어는 사람이 보면 단순히 0과 1의 배열일 뿐입니다.이해가 가질 않죠, 그래..

✏️부동 소수점과 고정 소수점 컴퓨터는 실수를 표현할 때 소수점의 위치 고정 여부로 고정 소수점과 부동 소수점으로 나눕니다.고정 소수점은 소수점의 위치가 고정되어 있는 표현법부동 소수점은 소수점의 위치가 고정되어 있지 않고 이동하며, 따로 위치를 나타내는 수를 적는 표현법입니다. 이렇게 말해선 이해가 가지 않을 수도 있으니 예시로 확인해보죠. 그전에 십진수 소수를 이진수로 표현하는 방법에 대해서 말해보면 13.625라는 십진수를 이진수로 표현하려면 정수부분인 13을 이진수로 변환하고, 나머지 0.625를 이진수로 변환 시키고둘 사이에 소수점을 찍어서 이어주면 끝입니다. 0.625는 어떻게 이진수로 표현하냐면 단순하다 2를 곱하고 정수 부분을 쓰고, 남은 소수 부분이 0으로 나누어 떨어질때 까지 반복해서 ..
- Total
- Today
- Yesterday
- Comparable
- 컴퓨터구조
- 순열
- java
- swea
- sw expert academy
- 괄호 회전하기
- Comparator
- 컴퓨터 구조
- 요세푸스
- 토마토
- 부동소수점
- 티스토리챌린지
- 기능 개발
- 조합
- 오블완
- 데이터
- 도둑질
- 구현
- 자바
- 고정소수점
- 메뉴 리뉴얼
- Call-by-Value
- 운영 체제
- 코테
- 프로그래머스
- 표 편집
- 백준
- 다단계 칫솔 판매
- 베스트 앨범
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |