본문 바로가기

프로젝트 & TIL

(103)
59일차 - 프로그래머스 문제 풀이, JWT https://school.programmers.co.kr/learn/courses/30/lessons/92343 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 https://yurison.tistory.com/373 [프로그래머스/자바] 양과 늑대 (작성 중) yurison.tistory.com JWT - 최근에는 웹브라우저-서버 뿐만 아니라 앱-서버 접근이 많아졌다. => 앱은 쿠키 기능이 기본적으로 제공되지 않는다. - JWT 토큰은 정보를 담을 수 있고, 유효성 체크에 DB 조회를 수반하지 않는다. JWT를 사용하는 이유(ChatGPT ..
58일차 - 토스페이먼츠, 프로그래머스 문제 풀이 https://app.tosspayments.com/ 토스페이먼츠 전자결제 app.tosspayments.com https://docs.tosspayments.com/preview/1 체험하기 | 토스페이먼츠 개발자센터 토스페이먼츠의 간편한 결제 연동 과정을 한눈에 볼 수 있습니다. 각 단계별 설명과 함께 달라지는 UI와 코드를 확인해보세요. docs.tosspayments.com 토스페이먼츠 연동 https://github.com/tosspayments/payment-samples/tree/main/payment-window/springboot GitHub - tosspayments/payment-samples Contribute to tosspayments/payment-samples developm..
57일차 - 코테, 스프링부트 프로젝트 참고 사항 https://school.programmers.co.kr/learn/courses/30/lessons/64065?language=java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 https://yurison.tistory.com/357 [프로그래머스/자바] 튜플 ❌ 실패 코드(런타임 에러) ❌ String을 계속해서 수정하는 코드라 그런지 런타임 에러가 났다. import java.util.Arrays; import java.util.Comparator; class Solution { public int[] solution(String ..
자바 토이 프로젝트 5 - 좌석 예약 프로그램 전체 코드 main() public class Main { public static void main(String[] args) throws IOException { // 10*4 좌석, 조회/예약/예약취소/예약 확인/종료 // 각 좌석은 [좌석번호, "", ""], 예약한 경우 [좌석번호, 예약자, 예약자_비밀번호] BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); Map map = new HashMap(); for(int i=1; i 40) System.out.println("유효하지 않은 좌석입니다."); else if(!map.get(seat)[0].equals("")) System.out.println("이미 예약..
56일차 - 알고리즘(DFS/BFS) https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 깊이 우선 탐색(DFS) - 그래프 완전 탐색 기법 중 하나 - 그래프의 시작 노드에서 출발하여 한 쪽 분기의 최대 깊이까지 탐색을 마친 후 다른 쪽 분기로 이동하여 다시 탐색을 수행하는 알고리즘 - 실제 구현 시 재귀 함수, 스택을 이용한다. 너비 우선 탐색(BFS) - 그래프 완전 탐색 기법 중 하나 - 시작 노드에서 출발해 시작 노드를 기준으로 가까운 노드를 먼저 방문하면서 탐색하는 알고리즘..
55일차 - 알고리즘(이진 탐색) https://school.programmers.co.kr/learn/courses/30/lessons/72412 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이진 탐색 - 정렬된 배열에서 원하는 값을 빠르게 찾는 검색 알고리즘 - 배열을 반으로 나누어 가며 원하는 값을 찾기 때문에, 시간복잡도가 O(log n)으로 매우 빠르다. public int binarySearch(int[] arr, int target) { int left = 0; int right = arr.length - 1; while (left
54일차 - stream 정렬 stream을 이용한 정렬 * 기본 정렬(오름차순) List list = List.of(5, 2, 3, 4, 1); list = list.stream().sorted().collect(Collectors.toList()); // 1, 2, 3, 4, 5 * 내림차순 정렬 List list = List.of(5, 2, 3, 4, 1); list = list.stream().sorted(Comparator.reverseOrder()).collect(Collectors.toList()); // 5, 4, 3, 2, 1 stream을 이용한 객체 정렬 * 기본 정렬(오름차순) List list = List.of( new Person("yuri", 30), // String name, int age new Per..
자바 토이 프로젝트 4 - 회원가입 & 로그인 프로그램 전체 코드 main() import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.HashMap; import java.util.Map; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); Map members = new HashMap(); init(members); System.out.println("========= 프로그램 시작 ========..