7일차 - 알고리즘 코드카타
·
Java & Spring/코딩테스트
- 진행일자완료 번호24.07.161~2024.07.1721~3524.07.1836~4224.07.1943~4724.07.2248~5024.07.2351~55 - 회고51. 푸드파이터 대회 : https://school.programmers.co.kr/learn/courses/30/lessons/134240 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr- 풀이// 성능 : 메모리: 97.5 MB, 시간: 31.65 msclass Solution { public String solution(int[] food) { String answer =..
6일차 - 알고리즘 코드카타
·
Java & Spring/코딩테스트
- 진행일자완료 번호24.07.161~2024.07.1721~3524.07.1836~4224.07.1943~4724.07.2248~50 - 회고48. K번째수https://school.programmers.co.kr/learn/courses/30/lessons/42748 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr- 풀이과정import java.util.*;class Solution { public int[] solution(int[] array, int[][] commands) { int[] answer = new int[commands.lengt..
5일차 - 알고리즘 코드카타
·
Java & Spring/코딩테스트
- 진행일자완료 번호24.07.161~2024.07.1721~3524.07.1836~4224.07.1943~47 - 회고https://school.programmers.co.kr/learn/courses/30/lessons/147355?language=java 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr개선 전테스트 케이스 런타임 에러 발생import java.util.*;class Solution { public int solution(String t, String p) { int answer = 0; for(int i = ..
4일차 - 알고리즘 코드카타
·
Java & Spring/코딩테스트
- 진행일자완료 번호24.07.161~2024.07.1721~3524.07.1836~42- 회고최대공약수, 최소공배수 구하기* 유클리드 호제법- 구현- 에러발생   0으로 나누기 시도- 이유 : 처음 구현 시 최대공약수 값에 s를 대입했는데             while문의 조건에 s가 0이 아닐 때 까지이다, 그러므로 최종 s는 0이되게된다.            그렇기 때문에 최대공약수는 0이되기전 s 즉 tmp에 저장해둔값이 된다.배열에서 세수의 합이 0이되는 경우 찾기개선전삼중 for문으로 시간복잡도가 O(n^3)이된다.for문 중첩은 비효율적이므로 다른방법을 찾아봤다.class Solution { public int solution(int[] number) { int answe..
3일차 - 알고리즘 코드카타
·
Java & Spring/코딩테스트
- 진행일자완료 번호24.07.161~2024.07.1721~35- 회고메소드 사용 에러해당 코드에서 [cannot find symbol] 에러 발생해결 : numericValue가 아닌 문자에서 유니코드를 활용해 '0'을 빼주는 방식으로 해결함공식사용을 통한 for문 사용 제한으로 코드 개선두 정수 사이의 합개선전for문을 활용해 하나씩 더함개선후등차수열의 합 공식인 [(항의개수) * (두 수의 합) / 2]을 활용오버플로우 발생개선전개선후입력받는 int num을 long으로 형변환 후 while문 진행문자열 내 변수 사용하기문자열 연결문자열 포맷'MessageFromat'문자열 재구축하기개선전개선후- [s.toCharArray()] : String s를 문자단위로 나눠 char배열 생성- [Array..
2일차 - 알고리즘 코드카타
·
Java & Spring/코딩테스트
- 진행일자완료 번호24.07.161~20    - 회고https://school.programmers.co.kr/learn/courses/30/lessons/12934 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 개선전불필요한 형변환과 변수선언들이 있음개선후long타입에서 바로 Math.sqrt를 하게되면 소수점이 잘리므로만약 n의 제곱근이 정수가 아니라면 처음 값 n과 달라지게된다.
NeetCode - Two Pointers
·
Java & Spring/코딩테스트
□ Is Palindromehttps://neetcode.io/problems/is-palindrome NeetCode neetcode.io- 코드 리뷰반복문을 통해서 양쪽 끝에서 시작하여 charAt과 isLetter || isDigit을 이용하여 새로문 문자열 생성※ isLetter || isDigit 은 isLetterOrDigit으로 사용 가능 □ Two Integer Sum IIhttps://neetcode.io/problems/two-integer-sum-ii NeetCode neetcode.io- 코드 리뷰※ 공간복잡도 O(1)의 조건이 있음List 생성 후 numbers배열 요소 대입만약 targer - numbers[i] 가 list 내에 있으면해당 indexOf를 가져오고 + 1 을 하..
NeetCode - Arrays & Hashing
·
Java & Spring/코딩테스트
https://neetcode.io/roadmap NeetCode neetcode.io□ Duplicate Integerhttps://neetcode.io/problems/duplicate-integer NeetCode neetcode.io □ Is Anagramhttps://neetcode.io/problems/is-anagram NeetCode neetcode.io □ Two Sumhttps://neetcode.io/problems/two-integer-sum NeetCode neetcode.io  - HashMap 사용1. HashMap 초기화HashMap prevMap = new HashMap(); → prevMap은 배열의 값과 해당 인덱스를 저장하는 HashMap입니다.2. 배열 순회for (..
프로그래머스 - 기초트레이닝 7일차(완료)
·
Java & Spring/코딩테스트
뒤에서 5등 위로전국 대회 선발 고사문자열 정수의 합- 문자 '1' 은 아스키 코드 49, '0'은 48이다 문자에서 순수 숫자를 얻고싶으면 - 48 or - '0'을 시행하면된다.문자열을 정수로 변환하기다른방법 :- Integer.parseInt(str); 문자열을 정수형으로 변환하는 메소드0 빼기다른방법:두 수의 합- 사용명령어 : BigInteger`BigInteger` 클래스는 자바에서 정수형 데이터를 임의의 정밀도로 표현할 수 있도록 해주는 클래스입니다.이 클래스는 `int`나 `long`으로 표현할 수 없는 매우 큰 정수를 다룰 때 사용됩니다. 예를 들어, 수십 자리 이상의 정수를 다루어야 하는 경우에 유용합니다. `BigInteger` 클래스의 객체는 불변(immutable)이므로 한 번 생..
프로그래머스 - 기초트레이닝 6일차
·
Java & Spring/코딩테스트
특정 문자열로 끝나는 가장 긴 부분 문자열 찾기- 사용명령어 : str1.lastIndexOf(str2); → str1속 str2가 속하는 가장 마지막 index 시작                       str.substring(a, b);문자열이 몇번 등장하는지 세기ad 제거하기어려웠던부분 : 그냥 for문의 i를 1씩 증가시키면서 remove를 하면 remove되면서 temp의 index에 변동이 생겨                         순환참조시에 문제가 발생되게된다.                         이를 해결하기 위해 역순으로 i를 감소시키면서 for문을 실행한다.다른방법 :- 사용명령어 : iteraotr                       Iterator iteraot..