목록2023/12/18 (5)
Dazzling 개발 노트
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bkMTMw/btsB7PVZ2hO/E4lsn52llS5vXxeezAHcwk/img.png)
1. Spring Boot 프로젝트 생성 https://start.spring.io/ 의존성까지 추가한 후에 Generate 클릭 시 압축파일이 다운된다. 압축을 해제한다. 2. Intelij에서 다운받은 파일의 경로를 Open 한다. 프로젝트가 정상적으로 열린 경우, 위와 같은 directory를 확인할 수 있다. 3. 프로젝트 실행 jdk를 선택한 후 intelij에서 설정 준비가 완료되면 src > main > java 내에 Application.java 파일을 실행할 수 있게 된다. 초록색 실행 버튼을 눌러 프로젝트를 실행한다. 4. 프로젝트 실행 확인 프로젝트가 정상적으로 실행되면 아래와 같은 콘솔을 확인할 수 있다. 8080포트를 통해 확인한다. 번외). 프로젝트 실행 시 오류 발생 아래와 같..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/r6CRP/btsCf7aaDHo/XPkkEpQckKu7FAPFEjYBj0/img.png)
Port 0000 was already in use는 자주 발생하는 오류 중 하나이다. 사용중인 포트를 종료하고 다시 시작해주면 된다. Windows # 사용중인 포트의 PID 확인 netstat -ano | findstr 8080 # 사용중인 포트를 PID로 종료시키기 taskkill /F /pid 4460 # 액세스가 거부되는 경우 cmd를 관리자 권한으로 열어서 실행 Mac lsof -i tcp:8080 sudo kill -9 PID명
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/c89I89/btsCgqtMeiA/M3r29m5KfaW3Kc8JhhbOR0/img.png)
기본 연산 강제로 여러 줄의 코드를 한 줄로 몰지 않는 이상, 한 줄에는 하나의 명령이 올 것 입니다. 가장 간단한 연산은 역시 대입일 것입니다. set a = 10 실제로 a라는 변수를 만들고, 10이라는 값을 할당하는 과정에서 컴퓨터는 많은 연산을 하지만, 우리는 단순하게 O(1)의 연산을 수행했다고 볼 것입니다. 조건문도 비슷합니다. set a = 5 if a != 10 print('hello') print 같은 메서드를 O(1)이라고 가정한다면, 대입도 O(1)이고 print도 O(1)이니 if a != 10 만 정확하게 알면 될 것 입니다. 그러나 결국 단순히 두 값을 비교하는 연산을 수행하기 때문에, 결과적으로 조건문도 O(1)의 시간복잡도를 보여주게 됩니다. 따라서 위 코드의 시간복잡도는 O..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cx0eBx/btsB7kWq18T/9yH3gT2BGHSLRd4vQQFuQK/img.png)
본래 점근적 표기법은 수학적인 개념이기 때문에 엄밀한 정의를 설명하기엔 수학적 지식이 약간 필요하지만, 우리는 간단하게 개념을 이해할 수 있는 수준으로 설명하도록 하겠습니다. 점근적 표기법에는 크게 O, Ω, Θ가 있습니다. 각각 빅-오, 빅-오메가, 빅-세타라고 부릅니다. 간단한 다항식 n3+n2+n−1이라는 식이 있다고 가정하겠습니다. O는 가장 높은 차수 보다 같거나 높은 식을 뜻합니다. 즉, n3+n2+n−1에서 가장 높은 차수는 n3 이므로 O(n3), O(n5), O(n100) 모두 맞는 말이지만, 우리는 앞으로 이 식을 보게 되었을 때 좀 tight하게 O(n3) 라고 부르게 될 것이며, 이것이 바로 시간복잡도를 재는 척도로 쓰이게 됩니다. 이때 표현은 n3+n2+n−1=O(n5) 와 같이 ..