리그오브레전드를 해본사람들은 안다. 알파벳만 나열해도 안다. QWER, 그리고 평타. QWER 은 마나를 소모하여 적을 공격하는 스킬들. R 은 그중에서 제일 강력한 제일 쎈 궁 스킬. 그리고 기본적인 공격 스킬(평타).
QWER은 문제들에 따라 달라진다고 보면된다. 하지만 공통적으로 가져야할 스킬들 그리고 개념들이 있다. 그것을 이곳에 나름대로 수집한 자료들을 정리하고자 한다.
💡알고리즘의 성능을 수학적으로 표기하는 방법입니다. 알고리즘의 “효율성”을 평가하는 방법.
빅오(Big-O)표기법, 빅 오메가(Big-Ω) 표기법
빅오 표기법 : 최악의 성능이 나올 때 어느 정도의 연산량이 걸릴것인지,
빅오메가 표기법 : 최선의 성능이 나올 때 어느 정도의 연산량이 걸릴것인지에 대해 표기합니다.
알고리즘의 성능은 항상 동일한 게 아니라 입력값에 따라서 달라질 수 있고, 어떤 값을 가지고 있는지, 어떤 패턴을 이루는 데이터인지에 따라서 뭐가 좋은 알고리즘인지 달라질 수 있다. 시간복잡도를 생각해서, 효율적인 코드를 짜는것이 핵심이다 (시간이 적게 걸리는것이 좋은것).
시간복잡도
💡 입력값과 문제를 해결하는 데 걸리는 시간과의 상관관계. 입력값이 2배로 늘어났을 때 문제를 해결하는 데 걸리는 시간은 몇 배로 늘어나는지를 보는 것.
공간복잡도
💡 입력값과 문제를 해결하는 데 걸리는 공간과의 상관관계. 입력값이 2배로 늘어났을 때 문제를 해결하는 데 걸리는 공간은 몇 배로 늘어나는지를 보는 것이라 한다. 입력값이 늘어나도 걸리는 공간이 덜 늘어나는 알고리즘이 좋은 알고리즘이라한다.
"알고리즘에서는 거의 모든 알고리즘을 빅오 표기법으로 분석한다. 왜냐면 대부분의 입력값이 최선의 경우일 가능성은 굉장히 적을 뿐더러,
우리는 최악의 경우를 대비해야 하기 때문이다."
구글에서 '파이썬 알고리즘 문법' 등을 찾아보니 나와같은 사람들이 넘쳐났다. 알고리즘을 풀기위한 필수 파이썬 문법이 각종 블로그에 있었다. 이것을 바탕으로 어떻게 공부할지에 대해서 계획을 세우려고 한다.
커리큘럼상 파이썬을 따로 공부할 시간일 내기가 굉장히 어렵다. 월요일부터 토요일까지 9 to 12 위주로 식사시간 제외하고 쭉 가기때문에 효율적인 방법을 찾아야한다. 우선 첫 주말을 맞아, 파이썬 기본 문법을 훑어보고, 알고리즘에 필요한 문법들을 더 보려고한다.
이곳에 쭈우우욱 나와있다...내가 직접 글을 쓰려다가 이걸보고 입이 벌어졌다....감사합니다정말..
https://juni-dev-log.tistory.com/107
이곳에서는 파이썬 기초문법에 대해 얼마나 알고 모르는지 체크할것이다.
https://codeup.kr/problemsetsol.php?psid=33
파이썬 qwer을 장착하는데 나에게 플랜을 제시한곳이다...이곳 정말 많이 참고할것같다.
https://11001.tistory.com/59
이것들을 얼른 숙지하고 문제를 보아야 이해하기 수월할것이다.
그동안 공부한것을 복습하고 내일부터 풀어야할 문제들을 좀 알아보는 시간을 가지려고 한다!