부트캠프교육중301 공간 복잡도(Space Complexity) -알고리즘이 수행되는 데에 필요한 메모리의 총량을 의미. -프로그램이 필요로 하는 메모리 공간을 산출하는 것을 의미. -프로그램이 요구하는 공간은 고정적인 공간과 함께 가변적인 공간을 함께 요구합니다. 고정적인 공간은 처리할 데이터의 양에 무관하게 항상 요구되는 공간으로서, 프로그램의 성능에 큰 영향을 주지 않는다. 그러나 가변적인 공간은 처리할 데이터의 양에 따라 다르게 요구되는 공간으로서 프로그램의 성능에 큰 영향을 줍니다. -공간 복잡도 계산은 시간 복잡도 계산과 비슷하게 빅 오 (Big-O) 표기법으로 표현합니다. 아래의 가장 간단한 공간복잡도 예시를 보겠습니다. function factorial(n) { if(n === 1) { return n; } return n*factorial(n-1); .. 2023. 4. 5. 시간복잡도 #효율적인 방법을 고민한다 = 시간 복잡도를 고민한다 #시간복잡도를 고려한다 = 입력값의 변화에 따라 연산을 실행할때, 연산 횟수에 비해 시간이 얼마만큼 걸리는가 효율적인 알고리즘을 구현한다 = 입력값이 커짐에 따라 증가하는 시간의 비율을 최소화한 알고리즘을 구성했다. #시간 복잡도를 표기하는 방법 -Big-O(빅-오) -Big-Ω(빅-오메가) -Big-θ(빅-세타) -위 세 가지 표기법은 시간 복잡도를 각각 최악, 최선, 중간(평균)의 경우에 대하여 나타내는 방법이다. -시간 복잡도는 주로 빅-오 표기법을 사용해 나타낸다. -빅오 표기법은 최악의 경우를 고려하므로, 프로그램이 실행되는 과정에서 소요되는 최악의 시간까지 고려할 수 있기 때문입니다. "최소한 특정 시간 이상이 걸린다" 혹은 "이 정도 시간.. 2023. 4. 5. 알고리즘 #알고리즘은 어떤 문제를 해결하기 위해서 일련의 절차를 정의하고, 공식화한 형태로 표현한 일종의 문제 풀이 방법, 해(解)를 의미합니다. 이런 알고리즘은 프로그래밍에서는 input 값을 통해 output 값을 얻기 위한 계산 과정을 의미합니다. #알고리즘이라 명시 되려면 일정한 조건들을 반드시 만족해야만 합니다. -입력(Input) : 알고리즘은 출력에 필요한 자료를 입력받을 수 있어야 합니다. 이 상황에서는 제일 먼저 빨간불인 신호등이 초록불이 되려면 5분이라는 시간을 입력 받아야 합니다. 하나 더 알아야 할 것은 신호등은 항상 시간을 입력받아야 알고리즘이 동작하지만 꼭 입력을 받지 않아도 되는 알고리즘도 있습니다. (ex. 원주율(pi)의 1조 번째 자리 수를 구하려는 경우 입력은 없지만 출력은 있다.. 2023. 4. 5. 프록시 Proxy 사용법 -webpack dev server의 proxy를 사용하게 되면, 브라우저 API를 요청할 때 백엔드 서버에 직접적으로 요청을 하지 않고, 현재 개발서버의 주소로 우회 요청을 하게 됩니다. 그러면 웹팩 개발 서버에서 해당 요청을 받아 그대로 백엔드 서버로 전달하고, 백엔드 서버에서 응답한 내용을 다시 브라우저쪽으로 반환합니다. -proxy는 보통 맨 밑에 작성을 해 금방 찾을 수 있도록 합니다. ... "browserslist": { "production": [ ">0.2%", "not dead", "not op_mini all" ], "development": [ "last 1 chrome version", "last 1 firefox version".. 2023. 4. 4. 이전 1 ··· 20 21 22 23 24 25 26 ··· 76 다음