![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FP8w87%2Fbtspg10PDm3%2FfoLZ21FCyZAUOtee9fek00%2Fimg.png)
[Algorithm] 토끼와 거북이 - 2
2023. 7. 28. 00:41
Information Technology/Algorithm
LeetCode 142번 문제 - Linked List Cycle 2 https://leetcode.com/problems/linked-list-cycle-ii/ 주어진 연결 리스트에서 사이클의 시작 노드 찾기 - 입력: 연결 리스트의 head - 출력: 사이클이 있으면 시작 노드, 없으면 null 리턴 - 토끼와 거북이 알고리즘으로는 만나는 거까진 알 수 있었는데 시작을 어디서 했는지는 모름 토끼와 거북이 알고리즘 2 - 시작 위치 찾기 토끼와 거북이는 같은 장소에서 출발 - 거북이가 한 칸을 이동할 동안, 토끼는 두 칸 이동 만약 연결 리스트 내에 사이클이 없다면 토끼와 거북이는 이동 중에 NULL 노드를 만날 것 만약 연결 리스트 내에 사이클이 있다면 토끼와 거북이는 언젠가 반드시 만나게 될 것 토..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbvdkaL%2Fbtso6bcwN29%2FqmEpKlXppLfcz6KNUrkoX0%2Fimg.png)
[Algorithm] 토끼와 거북이 - 1
2023. 7. 26. 22:07
Information Technology/Algorithm
LeetCode 141번 문제 - Linked List Cycle https://leetcode.com/problems/linked-list-cycle/ - 입력: 연결 리스트의 head - 출력: 사이클이 있으면 true, 없으면 false를 리턴 - 공간을 O(1)만 사용하고 풀기 - 그냥 푸는 건 easy인데, O(1) 메모리를 사용해서 푸는 건 간단하지 않음 - 위키피디아의 Cycle detection (순환 검출) 을 참고하면 자세히 나와 있음 토끼와 거북이 알고리즘 1 - 사이클 유무 판단 - 토끼와 거북이는 같은 장소에서 출발 - 거북이가 한 칸을 이동할 동안, 토끼는 두 칸 이동 - 만약 연결 리스트 내에 사이클이 없다면 토끼와 거북이는 이동 중에 NULL 노드를 만날 것 - 만약 연결 리..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8vmGB%2FbtsffuZ8gj1%2F5fRjOdxRNdzStTBaOg4mrk%2Fimg.png)
[용어] 스프링과 스프링 부트의 차이점은?
2023. 5. 9. 17:20
Information Technology/용어
결론 1. 스프링은 자바 기반 어플리케이션을 만드는데 사용, 스프링 부트는 주로 REST API 개발할 때 사용 2. 특정 프로젝트에서 필수적인 종속성 구성 필요 시 Spring 3. 일반적인 종속성 구성으로 구현이 가능한 프로젝트라면 Spring Boot 스프링 (Spring) 이란? - 정확한 표현으로는 스프링 프레임워크 (Spring Framework) - 의존성 주입 (DI, Dependeny Injection)과 제어 역전 (IOC, Inversion of Control), 관점 지향 프로그래밍 (AOP)이 가장 중요한 요소 - 위 요소들을 통해 느슨한 결합 (Loose Coupling)을 달성할 수 있음 - 위와 같이 느슨한 결합으로 개발한 어플리케이션은 단위 테스트를 수행하기 용이함 의존성 ..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLMqkG%2FbtscHmQGCxu%2F0s3vEOSvbm9WtFgLISMtuK%2Fimg.png)
[용어] Web Server와 WAS의 차이
2023. 4. 25. 16:14
Information Technology/용어
Web Server 란?- 작성된 html 페이지 등을 네트워크 망에 종속되지 않고 웹서비스를 할 수 있는 어플리케이션- 스프트웨어 웹서버: 웹 브라우저 클라이언트로부터 HTTP 요청을 받아들이고, HTML 문서와 같은 웹 페이지에서 찾아볼 수 있는 자료 콘텐츠 (정적)에 따라 HTTP에 반응하는 컴퓨터 프로그램- 하드웨어 웹서버: 위에 언급한 기능을 제공하는 컴퓨터 프로그램을 실행하는 컴퓨터// apache, nginx가 해당WAS (Web Application Server) 란?- 웹 서버 + 웹 컨테이너, 웹 상에서 사용하는 컴포넌트를 올려놓고 사용하게 되는 서버- 동적 서버 콘텐츠를 수행하는 것으로 일반적인 웹 서버와 구별이 됨- 주로 데이터베이스 서버와 같이 수행 됨- 웹 컨테이너란 JPS와 S..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FBRP8e%2FbtsaUiPZ5k4%2FvckIh0RhTP3uV2o3BzT3WK%2Fimg.png)
[용어] Nginx - Reverse Proxy 란?
2023. 4. 18. 05:42
Information Technology/용어
Proxy 란? - 정보를 대신 전달해주는 주체 - Proxy Server라고 하면 중계 서버가 됨 - 프록시 없이 웹 서버를 운영할 경우, 사용자가 갑자기 많아질 때 처리가 느리고, 웹 서버가 그대로 노출되어 있어서 보안적으로 위험성이 있음 - Nginx를 사용하면 로드 밸런싱으로 부하를 줄일 수 있고, 분산 처리 또한 가능하며, 웹 서버의 SSL 인증도 적용 가능함 - 사용자 → Nginx → 웹서버로 구성해서 사용자의 요청을 Nginx가 대신 웹서버로 전달하도록 함 Reverse Proxy 란? - 클라이언트의 요청을 대신 받아 내부 서버로 전달해주는 것 # /etc/nginx/sites-available/프로젝트이름.conf 에 설정할 것 server { listen 80; server_name ..