181002 TIL Lec2 & 알고리즘 스터디
Oct 2, 2018
»
1막,
TIL (Today I Learned),
코드스쿼드
알고리즘 스터디
-
- Big(O)표현법
- 이진탐색과 단순탐색의 실행시간이 같은 비율로 증가하지 않기 때문에 알고리즘의 실행시간이 얼마나 걸리는지만 고려할 것이 아니라 리스트의 크기가 증가할 때 어떻게 증가하는 지 파악하기 위해 빅오표기법 사용
-
알고리즘이 동작하기 위해 필요한 연산횟수이며 최악의 실행시간을 나타냄
자료 출처
빠름 «««««««««««« 느림
O(log n) < O(n) < O(n log n) < O(n^2) < O(n!)
이진탐색 < 단순탐색 < 퀵 정렬 < 선택정렬 < 외판원 문제
- Big(O)표현법
-
- 다이나믹 프로그래밍 & 피보나치
- 하위의 작은 문제들을 풀고 이를 이용해서 더 큰 문제를 풀어나가는 방법
유튜브 강의가 이해하는 데 많은 도움이 되었다.
- 다이나믹 프로그래밍 & 피보나치
-
소수찾기 알고리즘 문제
프로그래머스 문제각자 30분씩 풀어보고 안되면 같이 풀어보기로 했는데 아무도 못 품..ㅎ..
난 절대 못 풀거라 생각했는데 풀긴 풀었다!! n^n으로 풀어서 효율성에서 떨어짐..
둘이서 짝코딩을 하면서 풀어봤는데 그래도 못 품..ㅎ…
–> 검색찬스를 썼다.function sieve(limit) { var bools = []; var primes = []; for (var i = 1; i < limit; i++) { bools.push(true); } for (var i = 2; i < limit; i++) { if (bools[i-2]) { for (var j = i*2; j <= limit; j += i) { bools[j-2] = false; } } } for (var p = 0; p < bools.length; p++) { if (bools[p]) { primes.push(p+2); } } return primes; } sieve(30);
학점계산기 step 3
- 리팩토링 위주로 수정했다. arrow function으로 다 수정하고, reduce사용해보고…
- 그리고 머지가 되었다 ! (생각보다 빨리 머지되서 당황)
알고리즘 문제
- 모의고사 문제도 안 풀리고… 이번 알고리즘 문제 넘 어려워서 많이 못 품…
일기
- 이번 주엔 추석에 잃어버린 리듬 되찾는 게 목표!
- 월,화 운동가서 너무 좋았당.
10/3(Wed) 개천절 To-Do
- 알고리즘 1문제
- 용어 정리
- CS50?