Big O Notation(빅오 표기법) #6 💡 **[Colt Steele](https://www.udemy.com/user/coltsteele/) 의 JavaScript Algorithms and Data Structures Masterclass의 강의를 참고하여 정리한 글입니다.** 6. 로그와 시간 복잡도 로그란? 로그는 간단히 말해 지수(n^2, 2^n 등)의 역수이다. 간단한 이해를 돕는 예제로 log2(8) 은 3 이다. 즉, 2^3=8 이라는 말과 같다. 일반적으로 log2(n)은 그냥 log(n) 으로 첨자 처럼 생략된다. 로그의 시간 복잡도 O(log n) 의 시간 복잡도 다음에서 보듯 O(log n)의 시간 복잡도는 처음엔 가파르지만 점점 가파른 정도가 줄어든다라는 것을 알 수 있다. 즉, n 의 값이 커지면 커질 수록 시간 복잡.. ocean floor/algorithm floor / 2022. 2. 25. / dankthedust
Big O Notation(빅오 표기법) #5 💡 **[Colt Steele](https://www.udemy.com/user/coltsteele/) 의 JavaScript Algorithms and Data Structures Masterclass의 강의를 참고하여 정리한 글입니다.** 5. Big O의 공간 복잡성 위의 페이지는 알고리즘에 따른 실행 속도 즉, 런타임과 관련하여 비교하였고 이를 시간 복잡도라고 한다. 입력의 크기가 증가함에 따라 달라지는 알고리즘의 런타임을 분석한 것이다. 이번에 배울 공간 복잡도는 바로 입력 데이터가 차지하는 공간에 따른 분석을 말한다. 즉, 입력 데이터가 차지하는 메모리의 양과 관련된 비교이다. JavaScript 에서의 공간 복잡도에 대한 기본적인 규칙이 존재한다. JS에서의 공간 복잡도 규칙 가장 기본적인 .. ocean floor/algorithm floor / 2022. 2. 25. / dankthedust
Big O Notation(빅오 표기법) #4 💡 **[Colt Steele](https://www.udemy.com/user/coltsteele/) 의 JavaScript Algorithms and Data Structures Masterclass의 강의를 참고하여 정리한 글입니다.** 4. Big O 표현식의 단순화 3페이지에서 빅오 표현식에 대해서 간단히 알아보았다. 앞전에 살펴보았듯이 solution1은 for 문을 통한 루프가 존재하며, 우리는 해당 코드에서 일어나는 연산을 5n+2 로 정의했었다. 그럼 빅오 표현식도 동일한가? 정답은 그렇지 않다. n 즉, 입력값에 따라 변동하는 빅오 표현식들( n^2 etc...)은 n 값을 크게 보면 다른 값들과 큰 차이성을 두각하지 않는다. 5n+2 나 10n 이나 n 값에 따라 증가하는 시간효율성의.. ocean floor/algorithm floor / 2022. 2. 25. / dankthedust
Big O Notation(빅오 표기법) #3 💡 **[Colt Steele](https://www.udemy.com/user/coltsteele/) 의 JavaScript Algorithms and Data Structures Masterclass의 강의를 참고하여 정리한 글입니다.** 3. Big O 시간 복잡도 2페이지를 통해 보았듯이 입력에 따라 알고리즘의 런타임이 어떻게 증가하는지에 대한 것이 바로 Big O이다. 즉 입력과 해당 입력에 따른 상대적인 시간 간의 관계이다. 다양한 기본적인 표기법이 존재한다. 선형함수 f(n) = n 지수함수 f(n) = n^2, f(n) = 2^n etc... 상수함수 f(n) = 1 이외의 다양한 함수 위의 그래프는 블로그를 탐색하며 빅오의 개념을 정리한 글을 찾아보다 찾게된 그래프이다. 빅오 표기법에서 .. ocean floor/algorithm floor / 2022. 2. 25. / dankthedust
Big O Notation(빅오 표기법) #2 💡 **[Colt Steele](https://www.udemy.com/user/coltsteele/) 의 JavaScript Algorithms and Data Structures Masterclass의 강의를 참고하여 정리한 글입니다.** 2. 작업의 수를 통한 비교 1.페이지를 통해서 우리는 시간을 통한 성능비교가 크게 신뢰할 수 있는 자료가 아님을 알게 되었다. 그렇다면 어떤 방법을 통해서 더 좋은 코드와 덜 좋은 코드를 구분하고 비교할 수 있을까? 바로 코드를 통해 컴퓨타가 수행해야하는 작업의 수를 계산하는 방법이다. 시간은 해당 컴퓨터의 컨디션, 사양 등에 따라 바뀔 수 있으나 작업의 수는 일정하다.(코드가 변하지 않는다면) 1.페이지에서의 에제를 해결하는 두가지 방법 중 solution2에 .. ocean floor/algorithm floor / 2022. 2. 25. / dankthedust
Big O Notation(빅오 표기법) (1) 💡 **[Colt Steele](https://www.udemy.com/user/coltsteele/) 의 JavaScript Algorithms and Data Structures Masterclass의 강의를 참고하여 정리한 글입니다.** 1. Big O Notation(빅오 표기법)의 필요성 빅오 표현식은 시간 복잡성 과 공간 복잡성을 정의 한다. 어떤 특정한 문제에 대한 해결 방법이 두 가지 있다고 가정해보자. 두 방법 모두 정상적으로 작동하나 변수의 이름 뿐만 아니라 모든 것이 완전히 다르며, 접근 방식 또한 상이하다. 하나는 루프를 사용한다거나 다른 하나는 목록이나 문자열을 사용할 수도 있다. 이러할 때에 두가지 방법 중에서 어느 것이 좋은 해결 방법이 도리 수 있는지 알 수 있는지에 대한 것.. ocean floor/algorithm floor / 2022. 2. 25. / dankthedust
탈피 탈피(脫皮) : 동물이 성장하기 위해 허물이나 껍질을 벗는 것을 말한다. 가만히 듣기만을, 옆에 서 있기만을, 같이 걷기 만을 그렇게 약 반년을 보냈다. 누군가 나를 먼저 찾기 전까진 아직 나에게 누구를 만나기엔 이르고 그럴 자격이 아직 갖춰지지 않았음을 스스로가 알았다. 그렇게 생각했다. 나는 다르게 살아왔고 잘 살던 그들 속에 어느 순간 끼어든 돌이다. 평범하지 않게 왔고 평범하지 않았기 때문에 평범한 사람이 되기 전까지는 자격이 없다 생각했다. 그런데 정말 감사하게도 나에게 특별한 날이 찾아왔다. 그때는 몰랐다. 아니 그때까지 몰랐다. 그 흔한 피시방 한번 안가봤고, 노래방도 가본적이 없다. 음악도 친누나가 텔레비전을 보며 틀던 음악방송이 다 였고, 아버지가 차안에서 틀던 사이먼 앤 가픈컬의 노래가.. reference book / 2022. 2. 3. / dankthedust
js를 이용한 HTML 요소 추가 방법들 프로젝트를 만들다 보면 js를 통해서 html의 요소를 추가해야하는 경우가 자주 있다. 특히나 어떠한 상호작용(서버에서 특정 데이터를 가져온다던지, 페이지 내에서의 input value의 값을 출력해야한다던지 등)에 의해서 html의 요소가 변경된다거나 추가 또는 삭제되어야 하는 경우가 있을 것이다. 이러한 기능을 수행하기에 여러 방법들이 있을텐데 이에 대한 각각의 장단점을 알아보고자 한다. 물론 마지막에 결합되거나 만들어진 문자열로 된 html 코드를 innerHTML을 통해서 넘겨주어야 하는 것은 동일하다. 다양한 방법에 대한 예를 들기 위해서 index.html 내에 존재하는 div class='container' 이라고 하는 태그 내에 로 감싸진 많은 태그와 태그 등의 다른 태그들이 생성되어야 한.. ocean floor/js floor / 2021. 12. 10. / dankthedust
1 2 3 4 ··· 6
Category / Manage
>