일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- C++
- JavaScript
- 채권
- 프로그래밍언어
- 자바
- 독후감
- algorithmTest
- algorithmStudy
- 책을알려주는남자
- 주식
- algorithmtraining
- 서평
- 독서
- 다독
- 화장품
- C
- 책알남
- 백준알고리즘
- 알고리즘 공부
- 돈
- 자바스크립트
- 투자
- 재테크
- 알고리즘공부
- 경제
- Java
- 지혜를가진흑곰
- 프로그래머스 알고리즘 공부
- 알고리즘트레이닝
- 성분
- Today
- Total
목록[Snow-ball]프로그래밍(컴퓨터) (331)
탁월함은 어떻게 나오는가?
연결 리스트(링크드 리스트) 개요 추상적 자료형인 리스트를 구현한 자료구조이다. Linked List라는 말 그대로 각 노드가 데이터와 포인터를 가지고 한 줄로 연결되어 있는 방식으로 데이터를 저장하는 구조이다. 이름에서 말하듯이 데이터를 담고 있는 노드들이 연결되어 있는데, 노드의 포인터가 다음이나 이전의 노드와의 연결을 담당하게 된다. 리스트의 각 원소는 메모리 상 연속적인 공간에 할당되지 않을 수 있다. 즉, 첫번째 원소의 주소를 알더라도 그 다음 원소의 주소를 단순히 계산할 수 없다는 의미이다. 리스트의 각 원소는 다음 원소를 가리키는 '포인터(Pointer)'등을 사용하여 각 원소의 순서를 구현한다. 리스트는 포인터로 연결하는 특징을 가지다 보니 배열보다 데이터의 삽입/삭제가 빠른 편이다. 삽입..
정규화란? 관계형 데이터베이스의 설계에서 중복을 최소화하게 데이터를 구조화 하는 프로세스를 정규화라고 부른다. 데이터베이스 정규화의 목표는 이상이 있는 관계를 재구성하여 작고 잘 조직된 관계를 생성하는 것에 있다. 일반적으로 정규화란 크고, 제대로 조직되지 않은 테이블들과 관계들을 작고 잘 조직된 테이블과 관계들로 나누는 것을 포함한다. 데이터베이스 디자인의 표준은 데이터베이스가 완전히 정규화되게 디자인 되어야 한다. 그 뒤 일부는 성능상의 이유로 비정규화될 수 있다. 정규화된 결과를 정규형이라고 하며, 정규형은 기본 정규형 고급 정규형으로 나뉜다. - 기본 정규형 : 제1정규형, 제2정규형, 제3정규형, BCNF(보이스/코드 정규형) - 고급 정규형 : 제4정규형, 제5정규형 정규화의 장점으로는 이상 ..
DHCP( Dynamic Host Configuration Protocol - 동적 호스트 설정 프로토콜 통신규약) 란? 호스트의 IP주소, 서브넷 마스크(Subnet Mask), 디폴트 게이트웨이(Default Gateway), 단말의 IP 주소,DNS 서버 IP 주소, 임대기간(Lease Time) 등의 다양한 네트워크 정보를 DHCP 서버가 PC와 같은 이용자 단말에 자동으로 할당해 주는 프로토콜을 말한다. DHCP에 대한 표준은 RFC문서에 정의되어 있으며, DHCP는 네트워크에 사용되는 IP주소를 DHCP서버가 중앙집중식으로 관리하는 클라이언트/서버 모델을 사용하게 된다. IP라우터는 인터페이스 및 호스트에 IP주소를 할당해 줄 수 있다. 예전에는 각 PC마다 고정 IP 설정을 도입하여 사용하거..
서브넷마스크의 개요 21세기에 IPv4 주소의 고갈이 현실화되고 있다. 각국의 NIC(Network Infomation Center)에서는 이를 최대한 늦추기 위하여 각 라우터가 브로드캐스팅하는 로컬 네트워크 영역에 공인 IP 대역을 호스트가 필요한 만큼만 할당하려는 노력을 하였다. 이러한 NIC 기관의 요구에 맞춰서 IETF에서는 로컬 네트워크 내부에서 접속한 호스트의 IP 대역을 외부 네트워크와 명확하게 구분할 수 있는 수단을 표준화하였고 이것이 서브넷 마스크(Subnet Mask)이다. 서브넷이란? IP 주소는 네트워크 부분과 호스트 부분으로 나누어진다. 하나의 로컬 네트워크란 하나의 라우터를 거쳐가는 여러개의 연결된 브로드캐스트 영역이다. 즉, 어떤 네트워크에서 한 노드가 브로드캐스트를 했을 때 ..
CPU란? CPU는 컴퓨터에서 가장 핵심적인 역할을 수행하는 부분이다. 프로그램을 실행하기 위해 메인 메모리에서 명령어를 인출하여 해독하고 실행한다. '인간의 두뇌'에 해당되며 크게 3가지로 구성된다. 1) 연산 : 덧셈, 뺄셈, 곱셈 등의 산술 연산과 논리곱, 논리합, 부정 등의 논리 연산을 수행한다. 두 가지 연산을 모두 수행하기에 산술논리연산장치라고도 불린다. 연산장치는 연산에 필요한 데이터를 레지스터에서 가져오고, 연산 결과를 다시 레지스터로 보내 저장한다. 2) 제어 : 명령어를 순서대로 실행할 수 있도록 제어장치이다. 주기억장치에서 프로그램 명령어를 꺼내 해독한 다음, 해독한 결과에 따라 명령어 실행에 필요한 제어 신호를 기억장치, 연산장치, 입출력장치로 보낸다. 또한 이들 장치가 보낸 신호를..
HTTP의 특징으로 인한 쿠키와 세션을 사용하는 이유 - HTTP 프로토콜의 특성이자 약점을 보완하기 위해서 쿠키 또는 세션을 사용한다. 기본적으로 HTTP 프로토콜 환경은 "connectionless, stateless"한 특성을 가지기 때문에 서버는 클라이언트가 누구인지 매번 확인해야 한다. 이 특성을 보완하기 위해서 쿠키와 세션을 사용한다. Connectionless(비연결 지향)란? 클라이언트가 요청을 한 후 응답을 받으면 그 연결을 끊어버리는 특징이 있다. HTTP는 먼저 클라이언트가 request를 서버에 보내면, 서버는 클라이언트에게 요청에 맞는 response를 보내고 접속을 끊는 특성이 있다. 헤더에 keep-alive라는 값을 줘서 커넥션을 재활용하는데 HTTP1.1에서는 이것이 디폴트..
TCP(Transmission Control Protocol) 1. 개요와 특징 1) 네트워크 계층의 프로토콜로, 강력한 에러 제어 기능을 바탕으로 신뢰성 있는 데이터 전송, 흐름 제어 등의 기능을 수행한다. 2) 연결지향형 프로토콜로, 먼저 송수신자 간의 연결이 확인되면 메시지 송수신을 시작한다. - 송수신 가능 여부를 파악하는 것은 TCP/IP 프로토콜 내부의 ICMP 프로토콜이다. 3) 주요 기능은 신뢰성 있는 데이터 송수신, 순서 제어, 전이중통신(Full Duplex), 흐름 제어, 혼잡 제어 등이 있다. 4) TCP에서 가장 중요한 요소로, TCP의 연결 성립(Established) 단계부터 연결 요청, 종료까지의 상태 변화이다. 5) 상태전이 과정의 신호 상세이다. 2. 흐름 제어 슬라이딩 ..
[개념과 원리] 최대 용량 M인 하나의 배낭과 n개의 물체가 있고, 각 물체 i에는 물체의 무게 wi와 해당 물체를 배낭에 넣었을 때 얻을 수 있는 이익 pi가 부여되었다고 가정한다. 배낭(kanpsack) 문제는 배낭의 용량을 초과하지 않는 범위 내에서 배낭에 들어 있는 물체의 이익의 합이 최대가 되도록 물체를 넣는 방법을 찾는 문제이다. 여기서는 물체를 쪼개서 넣을 수 있다고 가정한다. [코드] 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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 #include using namespace s..