전체 글692 [DB] 중급 SQL - 1 데이터베이스 시스템 7판을 읽으며 간략하게나마 정리하는 글입니다. 이번 쳅터에서는 Join, View 정의, 트랜잭션, 무결성 제약 조건과 권한 허가에 대하여 알아보자. 1. Join 표현식 1 - 1) Natural Join 자연 조인 연산은 두 개의 릴레이션에 대해 수행되고, 하나의 릴레이션을 결과로 생성한다. 카티션 곱 같은 경우 선행 릴레이션의 각 튜플과 후행 릴레이션의 모든 튜플을 짝지어서 릴레이션을 생성하지만, 자연 조인은 두 릴레이션의 스키마에 나타나는 속성 값이 같은 튜플의 짝만 고려한다. student natural join takes 위 표현은 student와 takes의 공통 속성인 ID에 대하여 동일한 값을 가지는 짝만 고려한다. 각각 카티션 곱과 자연 조인을 적용시켜보면 다음과 같.. CS/DB (2022-1) 2022. 9. 29. [Docker] 다중 컨테이너 구성 이번에는 MongoDB, NodeJS Server, React를 각각 컨테이너로 만든 후, 이들이 서로 소통하여 진행되도록 만들어 봅시다! 1. 컨테이너화 시키기 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 1 - 1) MongoDB 컨테이너화 docker run --name mongodb --rm -d -p 27017:27017 mongo "mongodb"라는 이름으로 컨테이너를 생성하며, 컨테이너 종료시 자동 소멸되고, port는 27017로 개발하였다. 1 - 2) Node.js 컨테이너화 우선 우리가 만든 간단한 애플리케이션을 Dockerfile을 통해서 이미지로 build 합시다. FROM node WORKDIR /app COPY package.json . R.. DevOps/Docker 2022. 9. 28. [프로그래머스][C++] 코딩 테스트 공부 (249) 직접 풀어보고 올리는 코드입니다. 지적이나 더 좋은 방향에 대한 댓글은 항상 환영합니다. https://school.programmers.co.kr/learn/courses/30/lessons/118668 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 생각의 흐름 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 사실 맨 처음 문제를 읽고 생각이 난 풀이는, 다익스트라를 활용한 최소거리를 찾는 풀이였다. 다만 다익스트라를 적용시키려면 그레프를 먼저 만들어야 하는데, 이부분이 만만치 않다 생각되었다. 두번째로 든 생각은 DP를.. Algorithm/프로그래머스 2022. 9. 27. [프로그래머스][C++] 등산코스 정하기 (248) 직접 풀어보고 올리는 코드입니다. 지적이나 더 좋은 방향에 대한 댓글은 항상 환영합니다. https://school.programmers.co.kr/learn/courses/30/lessons/118669 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 생각의 흐름 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 그레프 문제인건 확실한데, 처음 보면 익숙하면서 조금 어색한 느낌도 들고... 어떠한 방식으로 풀어야할지 한눈에 보이지는 않았다. 이 문제는 생각할점이 3가지나 존재합니다. 1) 알고리즘 2) 편도와 왕복 3) 시간.. Algorithm/프로그래머스 2022. 9. 26. [DB] 관계형 모델 소개 데이터베이스 시스템 7판을 읽으며 간략하게 나마 정리하는 글 입니다. 1. 관계형 데이터베이스의 구조 관계형 데이터베이스는 테이블(table)의 모임으로 구성된다. ▶ Relation 일반적으로 테이블의 각 행은 일련의 값 사이의 관계(relationship)을 표한한다. 테이블이란 이러한 관계들의 모임으로, 테이블의 개념은 relation이라는 수학적인 개념과 밀접한 관련이 있다. 이러한 이유로 관계형 데이터 모델(relational data model)의 이름도 relation에 기반하고 있다. ▶ Tuple(튜플) 수학적 의미의 튜플은 값을 나열한것을 의미한다. n개의 값에 대한 관계는 수학적으로 n-tuple로 표현된다. 즉, n개의 값을 가진 하나의 tuple이 테이블에서 하나의 행이 된다. 즉.. CS/DB (2022-1) 2022. 9. 26. [우아한 Tech] 우아한 Redis 강대명 님의 우아한 Redis를 들으며 정리한 내용 입니다. 1. Redis 소개 인메모리 데이터 저장소 오픈소스 String, set ,sorted-set, hashes, list 등 다양한 타입 지원 1 - 1) 일반적인 Cache 사용법 (Look asid Cahce) 캐시에 자료가 없으면, DB 접근 후 캐시에 갱신하는 방식 1 - 2) Write Back 방식 Write가 매우 빈번한 경우, 매번 DB에 접근하여 Write하기 보다는 모아서 Cache에 저장해 두었다가, 나중에 특정 시점에 DB에 한번에 날려준다. 하지만 이 방식은 장애가 발생하여 Cache가 날라가버릴 위험이 있다. 예를 들어 log를 DB에 저장해야 할 때 write back과 같은 방식을 사용한다. 2. Redis의 장점 .. Life/컨퍼런스 2022. 9. 25. [프로그래머스][C++] 파괴되지 않은 건물 (247) 직접 풀어보고 올리는 코드입니다. 지적이나 더 좋은 방향에 대한 댓글은 항상 환영합니다. https://school.programmers.co.kr/learn/courses/30/lessons/92344 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 생각의 흐름 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 이 문제를 처음 보자마자 제한 조건 때문에 brute force 방식은 절대 불가능 하다 생각했다. 또한 이전까지의 경험에 의해서 2차원 누적합을 응용해야 될것 같다는 생각까지는 했다... 문제는... 2차원 누적합을.. Algorithm/프로그래머스 2022. 9. 22. [백준][C++] 스타트와 링크 (246) 직접 풀어보고 올리는 코드입니다. 지적이나 더 좋은 방향에 대한 댓글은 항상 환영합니다. https://www.acmicpc.net/problem/14889 14889번: 스타트와 링크 예제 2의 경우에 (1, 3, 6), (2, 4, 5)로 팀을 나누면 되고, 예제 3의 경우에는 (1, 2, 4, 5), (3, 6, 7, 8)로 팀을 나누면 된다. www.acmicpc.net 이번 문제는 백트래킹 알고리즘의 대표적인 문제라 생각되어 정리해본다. 생각의 흐름 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 우선 vec1, vec2 각각에 모든 사람의 번호를 집어넣어서 가능한 모든 케이스를 구하되 애당초 불가능 경우 바로 return 하면 됩니다. 이게 무슨 의미일까요? 불.. Algorithm/백준 2022. 9. 22. [프로그래머스][C++] 주차 요금 계산 (245) 직접 풀어보고 올리는 코드입니다. 지적이나 더 좋은 방향에 대한 댓글은 항상 환영합니다. https://school.programmers.co.kr/learn/courses/30/lessons/92341 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 생각의 흐름 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 우선 2개의 Map을 사용하게 된다. unordered_map과 map을 사용하게 되는데, map같은 경우 차량 번호의 오름차순으로 결과를 출력해야하기 때문에 사용하였다. 그 외에 주차 시작시간을 저장하는 경우 정렬을.. Algorithm/프로그래머스 2022. 9. 21. [프로그래머스][C++] 순위 검색 (244) 직접 풀어보고 올리는 코드입니다. 지적이나 더 좋은 방향에 대한 댓글은 항상 환영합니다. https://school.programmers.co.kr/learn/courses/30/lessons/72412 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 아니 이번 문제 이거 level 2 맞아? level 3 느낌인데?..... 생각의 흐름 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 우선 매번 조건을 검색하기에는 최대 50000 * 100000 = 50억 이기 때문에, 제한시간안에 해결할수가 없다... 따라서 입력값들을 .. Algorithm/프로그래머스 2022. 9. 19. [Docker] 컨테이너 통신 컨테이너의 통신은 어떤 대상과 통신을 하는지 기준으로 3가지 방식이 있다. 1. 컨테이너 web(WWW) 2. 컨테이너 host machine 3. 컨테이너 컨테이너 각각의 방식에서 어떻게 해야 통신을 할 수 있는지 알아보자! 1. 컨테이너와 Web의 통신 사실 이 방식은 너무 간단해서 정리할 점이 적다. 예를 들어 다음과 같이 컨테이너 내부의 애플리케이션에서 인터넷으로 요청을 보내는 코드가 있다고 해보자. get('https://some-api.com/shine-info').then(...) 이 경우 특별한 조치 없이도 Web과 소통이 가능하다. 아무런 문제없이 실행 중인 컨테이너 내부의 애플리케이션에서 외부의 WWW으로 request를 보내고, response를 반환받을 수 있다. 2. 컨테이너와 H.. DevOps/Docker 2022. 9. 18. [프로그래머스][C++] 후보키 (243) 직접 풀어보고 올리는 코드입니다. 지적이나 더 좋은 방향에 대한 댓글은 항상 환영합니다. https://school.programmers.co.kr/learn/courses/30/lessons/42890 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 생각의 흐름 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 우선 맨 처음 문제를 보고 든 생각은 조합을 구해야 한다는 점이었다. C++에서는 Python과 같이 조합을 구해주는 라이브러리가 없기 때문에 직접 구현해야 한다. C++에서 조합을 구하는 방식은 크게 2가지이다. 1.. Algorithm/프로그래머스 2022. 9. 15. 이전 1 ··· 9 10 11 12 13 14 15 ··· 58 다음