본문 바로가기

반응형

전체 글

(70)
[리트코드] 51. N-Queens 문제https://leetcode.com/problems/n-queens/description/ 문제 분석n x n 크기의 판에 Queen 들을 안전하게 놓는 방법을 구하는 문제이다.Queen 은 가로, 세로, 대각선으로 공격을 한다. n = 4 일 경우는 위의 두가지 방법이 존재한다. 조건에 1  접근 방법DFS 를 활용한 완전탐색으로 문제를 해결하였다.row 당 Queen 이 하나 올 수 있기 때문에 row 를 depth 로 사용하였고 queen 을 놓을때 마다 map 에 놓을 수 없는 위치를 표시하였다.그 후 row + 1 을 하여 재귀 호출을 하였다. 코드import java.util.*;class Solution { public List> solveNQueens(int n) { ..
[응용 계층] DNS 정리 DNS (Domain Name Service / Server)DNS 역시 응용 계층의 대표적인 프로토콜이다.네트워크 통신을 위해 IP 주소와 포트 번호를 사용하는데,IP 주소의 형태는 172.158.192.123 로 총 2^32 개의 주소를 갖을 수 있다. (IPV4 기준) IP는 사람이 이해하기 어려운 형태이기 때문에 나온 것이 Domain Name 이다.DNS 는 전화번호부 처럼 Domain Name 을 IP 로 매핑 해준다. DNS 는 전세계 사람들이 사용해야 하기 때문에 성능과 안전을 위해 서비스를 분산 시켜놓고 계층화 시켜 놓았다. DNS 계층 구조Root DNS Server : 제일 상위에 존재하며 내용을 카피한 13군데 존재한다.Top-Level Domain (TLD) Server : [.c..
[응용 계층] HTTP 와 Web Cache (Proxy Server) HTTP (HyperText Transfer Protocol)HTTP 는 응용 계층의 대표적인 프로토콜이다.HyperText Transfer Protocol  의 약자로 웹 상에서 데이터를 주고 받기위해 만들어졌다. 특히 웹 브라우저와 서버 사이의 HTML 문서 및 관련 자료를 주로 전송에 사용되며 HTML 문서 만이 아닌 IMAGE, 음성, 영상, 파일, JSON 등 거의 모든 형태의 데이터 전송이 가능히다. HTTP의 특징Client - Server 구조클라이언트는 서버에 요청을 보내고 서버는 요청에 대한 응답을 만들어 클라이언트에게 보내는 구조이다.무상태 프로토콜 (Stateless)서버가 클라이언트의 상태를 유지하지 않는다. 그렇기 때문에 서버를 자유롭게 확장 가능하다. (스케일 아웃)비연결성 (..

반응형