heap (heapq 모듈)
자료구조+알고리즘2022. 3. 22. 08:39heap (heapq 모듈)

Heap? 최댓값과 최소값을 빠르게 찾기 위한 완전 이진트리 기반 자료구조 인덱스 n번째 노드의 자식노드가 2개라고 하면 왼쪽 자식 노드의 인덱스는 2n, 오른쪽 자식 노드의 인덱스는 2n+1 최소힙(Min Heap) 각 노드가 해당 노드의 자식 노드보다 크지 않거나 작은 완전이진트리! 최대힙(Max Heap) 각 노드가 해당 노드의 자식 노드보다 작지 않거나 큰 완전이진트리! heapq 모듈 파이썬에 기본 모듈로 바로 import 해서 사용할 수 있다. 기본적으로 최소 힙(Min Heap)을 사용한다!! import heapq heappush() heap에 item 추가하기 import heapq heap = [] heapq.heappush(heap, 4) heapq.heappush(heap, 1) h..

자료구조+알고리즘2022. 3. 18. 08:20순열, 조합

itertools 파이썬에서 itertools 라이브러리를 이용하여 매우 간편하게 순열, 조합, 중복순열, 중복조합을 구할 수 있다! 순열 중복을 허용하지 않고 r개를 뽑힌 순서대로 나열한다. 만약 (1, 2) (2, 1) 이 있다면 다른 경우의 수로 취급! 튜플로 반환 from itertools import permutations for i in permutations([1, 2, 2, 3], 2): print(i, end=" ") // (1, 2) (1, 2) (1, 3) (2, 1) (2, 2) (2, 3) (2, 1) (2, 2) (2, 3) (3, 1) (3, 2) (3, 2) 조합 중복을 허용하지 않고 r개를 뽑기만 한다 만약 (1, 2) (2, 1)이 있다면 같은 경우의 수로 취급한다! fr..

기타 추가 사항
React+REST API 게시판 구현/FE - React2022. 3. 18. 01:07기타 추가 사항

Favicon / OG tag / title 변경하기 이제 프로젝트의 기능을 모두 구현했으므로 Favicon과 OG 태그, 브라우저에 보일 프로젝트의 제목을 설정하자. public 디렉토리 아래의 index.html 파일을 아래와 같이 수정해보자 또한 반응형 웹 어플리케이션을 사용하기 위해 initial-scale=1.0인 메타 태그도 하나 추가하자 전체 넓이를 디바이스의 넓이로 사용한다는 의미이다! 나는 아래 링크에서 간단하게 이모지를 파비콘으로 사용했다! https://favicon.io/emoji-favicons/memo Favicon.io - The Ultimate Favicon Generator (Free) With Favicon.io you can quickly generate a favico..

nohup (프로젝트 안 꺼지게 하기)
React+REST API 게시판 구현/EC2 + nginx 배포하기2022. 2. 17. 22:15nohup (프로젝트 안 꺼지게 하기)

Nohup git bash를 종료하면 EC2에 접속이 끊어지면 인스턴스에 접속할 수 없는 문제가 발생한다. 이러면 서버를 산 의미가 없다. 이를 동작하게 만들어보자. 우선 git bash로 EC2에 접속하고 express 프로젝트 폴더가 있는 곳으로 이동해서 아래 명령어를 입력하자 nohup yarn start & 아래와 같이 나오면 잘 실행이 되는 것이다. 만약 프로젝트를 끄고 싶으면 프로젝트가 있는 디렉토리를 이동해서 우선 아래 명령어를 입력하자. ps -ef | grep 'index.ts' 그리고 위의 빨간 네모 친 부분을 kill 명령어로 강제 종료시키면 된다! kill -9 22460

도메인 설정하기
React+REST API 게시판 구현/EC2 + nginx 배포하기2022. 2. 17. 19:20도메인 설정하기

도메인 구입 및 설정 https://www.gabia.com 웹을 넘어 클라우드로. 가비아 그룹웨어부터 멀티클라우드까지 하나의 클라우드 허브 www.gabia.com 위 링크에 들어가서 도메인을 구입하자. 원하는 도메인을 입력한 후 검색을 클릭. .shop 도메인이 500원/1년으로 할인중이니 구입해보자. 반드시 1년을 선택한 후에 구입을 진행하자! 로그인 후 우측 상단 My 가비아 클릭 후 DNS 관리툴 선택. 구입한 도메인 설정 클릭. 레코드 수정 클릭/ 레코드 추가 클릭 후 호스트에 @, 값/위치에 EC2 인스턴스 퍼블릭 주소 입력 후 확인, 저장 클릭. nginx 설정하기 nginx 설정파일에 접근해서 도메인 부분을 추가해야한다. sudo vi /etc/nginx/sites-enabled/defa..

Frontend/웹 관련 지식2022. 2. 15. 02:16Proxy (Forward, Reverse)

Proxy? 클라이언트와 서버 사이의 '대리인'이라 생각하자 클라이언트와 서버 사이에 위치해서 클라이언트는 프록시를 서버라고 인식하고 서버 또한 프록시를 클라이언트로 인식한다 서버와 클라이언트 사이의 중계인으로 대신 통신을 수행하는 역할을 하는 것이 프록시 서버이다! 프록시는 포워드 프록시와 리버스 프록시가 있다. CORS를 해결하기 위한 방법 중 하나가 Proxy를 이용하는 것! 예를 들어 3000번 프톤트 서버에서 8080 포트를 쓰는 백엔드 서버의 리소스를 가져오려 할 때 3000 포트에서 온 요청을 마치 8080 포트에서 바꿔주는 역할! Forward Proxy 일반적으로 프록시는 포워드 프록시를 의미한다. 클라이언트가 서버로 요청을 할 때, 인터넷에 직접 접근하는 것이 아니라 프록시 서버가 요청..

image