분류 전체보기 83

크래프톤정글 2주차; 중위 표기식과 후위 표기식, 스택으로 계산기 구현

2022-11-09 중위 표기식과 후위 표기식의 개념, 스택으로 계산기 구현하기 출처: https://www.youtube.com/watch?v=G9ujrSGEB4A&list=PLsMufJgu5933ZkBCHS7bQTx0bncjwi4PK&index=10 https://www.youtube.com/watch?v=MYk4autDAJ0&list=PLsMufJgu5933ZkBCHS7bQTx0bncjwi4PK&index=10 무엇? 연산자 operator 피연산자 operand 토큰 token : 코드 상에서 연산자와 피연산자를 의미 이항연산자 binary operator: 2+3, 2*5처럼 두 수를 필요로 하는 연산자 단항연산자 unary operator: +3 같은 경우 infix 수식: 연산자가 피연산자 ..

크래프톤정글 2주차; TIL 3 - 힙, 힙 정렬, 우선순위 큐, 파이썬 deque, 파이썬 print 함수 옵션

2022-11-07 힙 & 힙 정렬 & 우선순위 큐의 개념 출처:https://www.boostcourse.org/cs113/lecture/540275 https://www.edwith.org/intro-data-and-algo-2-2018/lecture/21489?isDesc=false https://www.edwith.org/intro-data-and-algo-2-2018/lecture/21491/?isDesc=false https://jackpot53.tistory.com/6 무엇? heap 구조는 배열이면서 완전 이진 트리(complete binary tree)로 시각화가 가능하고, 왼쪽부터 다음 인덱스의 노드를 채워 간다. 이러한 힙 구조를 유지하면서 부모 노드가 자식 노드보다 항상 큰 값을 가..

크래프톤정글 0주차 intro; 미니프로젝트 1차 발표 피드백

피드백 Q 다른 팀에 비해 기능이 많아보임. 기한 내에 완성할 수 있겠는가? → 제일 중요한 것은 버그 없이 돌아가는 것. (안정성) 무척이나 강조하심. "이렇게 하려고 했는데 여기까지 밖에 못했습니다"를 보고 싶지 않다고 하심. Q 오늘의 메모 여러가지면 스크롤 방식으로 할 것인지 어떻게 할 것인지 A 스크롤 방식으로 할 생각이라고 말함 이거 중요한 건가? 왜 물어보셨을까 → 계획대로 스크롤 방식으로 구현 Q 왜 아이디를 이메일이 아니라 이름으로 했는지 A 정글내에서만 쓸 거라면 특별히 비교적 복잡한 아이디로 할 필요가 없을 듯 해서 Q 비밀번호 찾기 기능은 없어도 될 듯하니 빼는 게 어떨까 나머지 핵심 기능을 완성도 있게 구현하는게 우선이라는 의도로 말씀하신 듯 함 Q 메인 페이지에서 페이지로 넘어가..

크래프톤정글 0주차 intro; 미니 프로젝트 안내

기획서 작성 클라이언트 서버 렌더링이 우리가 입학시험 등에서 했던 것 → 진자2 서버사이드 렌더링은 파이썬 기반, 플라스크 연동 쉬움 로그인 기능은 시간 되면 sns 로그인, 안되면 간략하게라도 넣을 것 기능은 간략해도 완성도있게 (버그 없게!) jwt 인증 방식 로그인 사용하기 발표 후 코치단 3명이서 qna

크래프톤정글 2주차; TIL 2 - 백준 곱셈 문제, 괄호의 값 문제

2022-11-05 곱셈 백준 1629번 파이썬 출처: https://velog.io/@grace0st/곱셈-백준-1629번-파이썬 왜? (AxB)%C = (A%C) * (B%C) % C을 이용했으나 (AxA^B-1)%C = (A%C) * (A^B-1%C) % C 처럼 공식을 세웠고, A^B-1 = A * A^B-2 라고 생각해서 B자리에 B-1을 넣는 재귀 함수를 만들었다. 메모리 초과로 실패. 어떻게? 분할정복으로 해결하는데, 나머지 분배 법칙 (AxB)%C = (A%C) *(B%C) % C 지수법칙 A^m+n = A^m x A^n 을 이용한다! 지수법칙을 따를 때, 참고 블로그처럼 A^11 = A^5 * A^5 * A 이렇게 사용해야하지, 내가 한 것처럼 A^11 = A * A^11-1 이렇게 해버..

크래프톤정글 2주차; TIL 1 - 이진 탐색, 공유기 설치 문제, 함수와 분할정복, 이진 탐색 트리

2022-11-03, 2022-11-04 이진탐색 강의 출처: https://www.edwith.org/knu-algorithm/lecture/170169?isDesc=false 무엇? binary search. 리스트의 범위를 반씩 줄여나가며 탐색하는 방법. 분할정복 알고리즘 설계법을 이용한 방법 中 하나. 왜? 어떤 값을 탐색하기 위함. 완전탐색보다 시간이 덜 든다 (빅O가 logN) 길이가 80인 리스트를 완전 탐색하면 80번 뒤져야 하지만, 이진 탐색은 log80 (계속 이등분 하기 땜에) 어떻게? 값이 정렬되어 있음을 전제함 low, mid, high 값을 지정하고, mid와 low, high의 값을 비교한 뒤, 오른쪽으로 갈 지 왼쪽으로 갈 지 정함. 그러면서 서서히 리스트의 탐색 범위를 줄여..

크래프톤정글 2주차; 자료구조 中 스택, 큐, 우선순위 큐

참고: https://www.boostcourse.org/ai100/lecture/739169?isDesc=false https://www.boostcourse.org/cs112/lecture/119044?isDesc=false 스택과 큐 자료구조는 예전에 인공지능 강좌 들을때 정리해둔 것, 정글 들어오기 전에 부스트코스에서 CS50 모두의 컴퓨터 과학 강좌를 들으며 정리한 내용이다. (CS50 강좌는 진짜 모두에게 추천이다. 너무 너무 재밌고 퀄리티가 아주 좋다. 이런 강의를 지구 반대편에서 무료로 들을 수 있어서 감사했다.) 자료 구조 데이터를 저장하는 형태와 집합 효율적인 문제 해결을 위해 올바른 자료 구조를 택해야 함! 스택 stack 나중에 넣은 데이터를 먼저 반환하는 메모리 구조 (Last I..

크래프톤정글 2주차; 이분탐색, 분할정복

참고: 부스트코스 CS50 모두를 위한 컴퓨터과학 에드위드 파이썬으로 배우는 알고리즘 기초 검색 알고리즘 검색 알고리즘이란? 선형 검색linear serach 이진 검색binary search 배열이 정렬되어 있음을 가정(미리 정렬해야함) 중간 인덱스부터 시작 → 찾고자 하는 값과 비교하며 오른쪽, 왼쪽으로 갈지 결정 → 오른쪽 중간, 왼쪽 중간에서 똑같은 과정 반복 슈도코드 If no items Return false If middle item is 50 Return true Else if 50 middle item Search right half 분할정복 알고리즘 설계 알고리즘 설계 종류 Brute-force (단순무식) ..

크래프톤정글 1주차; 문제 풀면서 참고한 것 3

2022-11-02 순열조합 itertools & 순열과 조합의 차이 출처: https://seu11ee.tistory.com/5 https://jwdeveloper.tistory.com/270 https://shoark7.github.io/programming/algorithm/Permutations-and-Combinations 무엇? 순열은 'order’가 중요하여, 순서가 다르면 다른 경우의 수에 해당하지만, 조합은 순서가 상관없다! ex) 순열은 1,2,3,4와 4,3,2,1이 다른 경우의 수이지만, 조합에서 둘은 하나의 경우의 수 파이썬에서 순열, 조합을 도와주는 모듈은 itertools 왜? 완전탐색 할 때 필요 (무턱대고 이론 공부 안하고 시작해서 문제 잘 안 풀렸다. 괜히 이론 공부부터 ..

크래프톤정글 1주차; 문제 풀면서 참고한 것 2

2022-10-30 0!는 1이다 😮 출처: https://johnleeedu.tistory.com/23 왜? 문제에서 팩토리얼 개념을 만나서 아리송해서 찾아 봄 어떻게? 2! = 2 * 1! 3! = 3 * 2! 처럼 n! = n * (n-1)! 이 성립하려면, 1! = 1 * 0! 일때 0!이 1이어야 함! 재귀 깊이 설정하기 출처: https://help.acmicpc.net/judge/rte/RecursionError 왜? 백준 문제 풀다가 가끔 재귀 에러가 뜰 때, 재귀 깊이를 더 높게 설정해주어야 함 어떻게? import sys sys.setrecursionlimit(10**6) set는 sort가 없음! 어떻게 정렬하나? 출처: https://programmer-ririhan.tistory...