목록코딩 이야기 (25)
미소를뿌리는감자의 코딩
1. 개요프록시 코드를 하나하나 분석해 보려고 한다.#include "csapp.h"#define MAX_CACHE_SIZE 1049000#define MAX_OBJECT_SIZE 102400/* 사용자 에이전트 헤더 상수 */static const char *user_agent_hdr = "User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.3) Gecko/20120305 " "Firefox/10.0.3\r\n";void doit(int connfd);void read_requesthdrs(rio_t *rp);int parse_uri(char *uri, char *hostname, char *path, int *port);void clienterro..
1. 개요 Computer Systems A Programmer's Perspective에서 페이지 930의 11.9 문제를 풀어보았다. [11.9] TINY를 수정해서 정적 컨텐츠를 처리할 때 요청한 파일을 mmap과 rio_readn 대신에 malloc, rio_readn, rio_writen을 사용해서 연결 식별자에게 복사하도록 하시오. void serve_static(int fd, char *filename, int filesize){ int srcfd; char *srcp, filetype[MAXLINE], buf[MAXBUF]; /* Send response headers to client */ get_filetype(filename, filetype); sprint..

삭제하려는 노드의 자녀가 없거나 하나라면 = 삭제 되는 색 - 삭제되는 노드의 색삭제하려는 노드의 자녀의 둘이라면 = 삭제 되는 색 - 삭제되는 노드의 successor의 색sucessor : 해당 노드의 오른쪽 sub tree의 가장 작은 값 - if 오른쪽 sub tree가 없다면 ... 해당 노드의 왼쪽 sub tree의 가장 큰 값 삭제 되는 색red : 어떠한 속성도 위반 xblack : 위반case 1. 삭제를 통해 root node의 색이 빨간색으로 바뀔 때, root node를 검정 색으로 바꾸면 해결이 됨. 만약 black 이 삭제되게 되면, RB Tree의 속성을 유지하지 못하게 된다. 따라서, extra black을 이용해서, 경로에서 black 수를 count 할 때, black ..

1. 개요이번에, LCS에 대해서 공부하게 되었다.LCS의 의미가 2가지로 해석될 수 있다.Longest Common SubstringLongest Common Subsequencesubstring의 경우 연속된 문자 배열을 가지는 경우의 수를 의미하며, subsequence의 경우엔 연속되지 않더라도 공통된 문자 배열의 길이를 의미한다. 참고한 코드는 내가 사랑하는 geeks for geeks...https://www.geeksforgeeks.org/longest-common-subsequence-dp-4/ Longest Common Subsequence (LCS) - GeeksforGeeksA Computer Science portal for geeks. It contains well written,..