전체 글

C++ Programming/알고리즘

[알고리즘] Quick Sort

🐥 Quick Sort Quick Sort는 거의 모든 정렬 알고리즘보다 빠른 특징을 가지고 있기 때문에 라이브러리에서의 정렬은 대부분 Quick Sort를 바탕으로 만들어져있다. Quick Sort는 매번 Pivot이라는 원소를 하나 선택하고 Pivot을 제자리로 보내는 작업을 반복한다. Pivot을 제자리로 보낸다는 말의 의미는 Pivot의 왼쪽에는 Pivot보다 작은 원소들을, Pivot의 오른쪽에는 Pivot보다 큰 원소들을 위치시킨다는 것이다. 가장 왼쪽에 있는 원소인 5를 Pivot으로 잡는다면 Pivot의 제자리는 위와 같다. Pivot을 기준으로 왼쪽은 Pivot보다 작은 원소들이, 오른쪽은 Pivot보다 큰 원소들이 있는 것을 볼 수 있다. 자세한 동작과정을 살펴보면 다음과 같다. Piv..

C++ Programming/알고리즘

[알고리즘] Merge Sort

🐥 Merge Sort Merge Sort는 재귀적으로 수열을 나눠 정렬한 후 합치는 정렬 알고리즘이다. 시간복잡도를 먼저 말하면 Merge Sort는 O(NlogN) 에 동작하는 빠른 알고리즘이다. Merge Sort를 이해하기 위해서 먼저 길이가 N, M인 정렬된 두 리스트를 합쳐서 길이가 N+M인 리스트를 만드는 방법을 알아야 한다. 위와 같은 정렬된 리스트 2개를 정렬하는 방법은 간단하다. 두 리스트의 가장 앞 원소를 확인하여 작은 것부터 채워 넣어주면 된다. 이미 두 리스트가 정렬되어 있는 상태이기 때문에 가장 작은 원소는 각 리스트의 가장 앞에 위치해 있을 것이고 두 개의 원소를 비교하면 두 리스트 중 가장 작은 원소를 찾을 수 있게 되는 것이다. 두 원소를 비교하는데 걸리는 시간은 O(1)이..

Spring

[Spring] 인프런 스프링 입문 정리 #3

💡 회원 관리 예제 회원 관리 예제를 진행해볼 것이다. 순서는 다음과 같다. 1. 비즈니스 요구사항 정리 2. 회원 도메인과 레파지토리 만들기 3. 회원 레파지토리 테스트 케이스 작성 4. 회원 서비스 개발 5. 회원 서비스 테스트 JUnit 프레임워크를 사용하여 기능 테스트를 진행한다. 🔍 비즈니스 요구사항 정리 첫 예제이기 때문에 요구사항은 최대한 간단하게 진행한다. 데이터 : 회원ID, 이름 기능 : 회원등록, 조회 아직 데이터 저장소가 선택되지 않았다는 가정 일반적인 웹 애플리케이션 구조 컨트롤러 : 웹 MVC의 컨트롤러 역할 서비스 : 서비스 클래스의 핵심 비즈니스 로직 구현 ex) 회원의 중복가입 불가 레파지토리 : 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인 : 비즈니스 ..

Spring

[Spring] 인프런 스프링 입문 정리 #2

📡 스프링 웹 개발 기초 1. 정적 컨텐츠 Spring Boot Features Graceful shutdown is supported with all four embedded web servers (Jetty, Reactor Netty, Tomcat, and Undertow) and with both reactive and Servlet-based web applications. It occurs as part of closing the application context and is performed in the earliest docs.spring.io 위 링크로 이동하면 스프링 공식 사이트에서 제공하는 정적 컨텐츠 내용이 정리되어 있다. src/main/java/resources/static 폴더..

Spring

[Spring] 인프런 스프링 입문 정리 #1

🎈 Intro 우테코 합격 결과가 나오고나서 어떤 공부를 하면서 지낼까 고민을 하다가 결국 모바일도 백엔드가 필요할 것이라고 생각이 들었다. 이전부터 해보고 싶기도 했고 배워본적이 1도 없는 분야라서 걱정이 되기도 하지만 이번 기회에 조금씩 알아가보려고 한다. 스프링 백엔드 강의하면 누구나 김영한 선생님의 강의를 꼽는다. 그래서 나도 무료 강의부터 들어보려고 한다. 우테코 시작까지 한 달이 남았는데 그 안에 다 듣고 내 것으로 습득하는 것이 목표이긴 한데 잘 모르겠다. (설연휴도 있고 생일도 있고.. 놀고 싶은 마음을 억제하기는 어려우니 장담은 못하겠다ㅎ..) 여기 글에서 나오는 코드와 그림은 인프런에 있는 김영한 선생님의 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술에서 가져..

기타

[기타] SK 공유기로 WOL 설정하기

보호되어 있는 글입니다.

활동

[싸피] 지원부터 합격까지

📌 Intro 컴퓨터공학과 학생이라면 대부분 싸피를 알 것 같다. 결과적으로는 9기에 지원했고 합격했다. 준비과정에 대해 내 경험을 녹여서 작성해보려고 한다. 9기 일정 지원서 접수 : 2022.10.24 ~ 2022.11.07 SW적성진단 : 2022.11.20 SW적성진단 발표 : 2022.11.29 인터뷰 : 2022.12.19 ~ 2022.12.23 인터뷰 결과 : 2022.12.22 🔎 SSAFY? 삼성 청년 SW 아카데미(SSAFY)는 삼성의 SW 교육 경험과 고용노동부의 취업지원 노하우를 바탕으로 취업 준비생에게 SW 역량 향상 교육 및 다양한 취업지원 서비스를 제공하여 취업에 성공하도록 돕는 프로그램 삼성과 고용노동부가 함께 주관하는 취업 지원 프로그램이다. 2학기로 나눠서 진행하며 1학기..

활동

[우테코] 최종 코딩테스트 & 합격 후기

📌 최종 코딩테스트 12월 17일 13:00 - 18:00 우아한 테크코스 최종 코딩테스트를 보고 왔다. 프리코스 3주차를 진행할 때 소감문에 '.' 한글자만 넣고 제출해서 당연히 최종 코딩테스트에 참여하지 못할 것이라고 생각하고 있었다. 그래서 맘을 놓고 있었는데 12월 14일 수요일 15시에 메일 아래와 같은 한 통이 날아왔다. 와..! 혹시나 하는 마음에 4주차 소감문에 3주차 소감문을 붙여넣긴 했지만 만약 내가 평가를 하는 입장이었다면 최종 코딩테스트를 볼 수 있게 해줬을까? 하는 생각이 든다. 하지만 감사하게도 합격했다. 태어나서 처음 타보는 8호선.. 3번을 갈아타야 올 수 있었다. 오전 시험이었으면 올 수 있었을까? 하는 생각이다. 다행히도 시험은 오후 1시였고 집에서는 10시에 출발했던 것..

Krrong
노는게 제일 좋아