본문 바로가기

전체 글

(74)
[내배캠] 열아홉번째 회고록 Chapter 1. JVM 구조, 메모리와 코드의 흐름 1. 자바언어의 특징 4가지 (1) 모든 운영체제에서 실행이 가능하다. (2) 객체 지향 프로그래밍이다. (3) 메모리 자동 정리가 가능하다 -> 가비지 컬렉터가 메모리 정리 해줌 (4) 무료로 사용가능한 라이브러리가 풍부하다 2. JDK(Java Development ToolKits)란 무엇인가? - 자바 개발 키트 - JDK : Java Development ToolKits + JRE - JDK는 개발자들이 JVM과 JRE에 의해 실행되고 구동될 수 있는 자바 프로그램을 생성할 수 있게 해준다. - JDK는 자바 기반 소프트웨어를 개발하기 위한 도구들로 이루어진 패키지 - 자바 프로그램을 구동하는 것이 자바 프로그램 개발의 일부분이기 때문에 JD..
[내배캠] 열여덟번째 회고록 ■ 문제 문자열 my_str과 n이 매개변수로 주어질 때, my_str을 길이 n씩 잘라서 저장한 배열을 return하도록 solution 함수를 완성해주세요. 답안 예시 : "abc1Addfggg4556b" 를 길이 6씩 잘라 배열에 저장한 ["abc1Ad", "dfggg4", "556b"]를 return해야 합니다. class Solution { public String[] solution(String my_str, int n) { int len = (int)Math.ceil((double)my_str.length()/n); String[] result = new String[len]; result = my_str.split("(?
[내배캠] 열일곱번째 회고록 5racle 5조 : 호텔 예약 프로그램 회고(KPT) Keep 모르는 부분들을 끝까지 해결하고자 하는 자세가 좋았다고 생각합니다. 처음 시작할 때 설계에 많은 시간을 투자한 것이 잘 했다고 생각합니다. 원할한 의사소통으로 프로젝트를 아주 분위기 좋게 진행한 점이 좋았습니다. class 명과 변수 등을 다같이 미리 정해서, 좀 더 원활한 진행이 되었습니다. 특히 미리 구조를 miro로 정리한 것은 전체적인 틀을 한눈에 볼 수 있어서 좋았습니다. intelliJ의 Code With Me 활용으로 피드백 시간을 단축한 것이 매우 효율적이었다고 생각합니다. 잘 모르는 부분을 화면공유하면서 서로 알려주려고 한 부분이 좋았습니다. Problem 코드를 짤 때 기초문법에서 실수가 많이 일어나서 개인적으로 조금 부끄..
[내배캠] 나의 열여섯번째 회고록 반복된 훈련으로 맷집을 키우자 알고리즘은 매일매일 꾸준하게 풀면서 깊이를 키워야 한다고 느꼈다. 프로그래머스 문제들도 괜히 Lv0을 만들어 놓은게 아니구나 싶었다. Lv0에도 의도가 있다. 기본적인 수학적 사고를 넓혀주고, 문제의 의도를 파악할 수 있도록 훈련시켜 주는 것 같다. 오늘은 부족한 부분을 채우고자 열심히 Lv0문제를 풀었다. 이렇게 한 문제를 풀고 나서 스스로의 코드를 분석해보고 중요한게 뭔지 적어놓는 것이 내 자산으로 남는다고 생각한다. 📚오늘의 문제 : 문자열 뒤집기/배열자르기/정수의 합 ■ 문제 문자열 my_string이 매개변수로 주어집니다. my_string을 거꾸로 뒤집은 문자열을 return하도록 solution 함수를 완성해주세요. 답안 예시 : my_string = 'appl..
[프로그래머스] Lv0. 문자열 뒤집기/배열자르기/정수의 합 ■ 문제 문자열 my_string이 매개변수로 주어집니다. my_string을 거꾸로 뒤집은 문자열을 return하도록 solution 함수를 완성해주세요. 답안 예시 : my_string = 'apple' -> 결과값 : elppa이 나와야 함 class Solution { public String solution(String my_string) { StringBuilder sb = new StringBuilder(my_string); String reversedStr = sb.reverse().toString(); return reversedStr; } } 💻 [ 내가 짠 코드 분석 ] 해당 문제는 문자열에 관련된 함수가 어떤게 있는지 알아보기 위한 문제였다. 문자열을 뒤집기 위해 StringBuil..
[프로그래머스] Lv0. 최대값 만들기 ■ 문제 정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소 중 두 개를 곱해 만들 수 있는 최댓값을 return하도록 solution 함수를 완성해주세요. 해당 문제는 배열의 정렬을 알면 쉽게 풀수 있는 문제라고 생각한다. java에서 제공하는 Arrays클래스의 sort()함수를 이용하여 ①오름차순으로 배열을 정렬한 후 ②가장 배열.length-1(가장 큰 값) 과 배열의 그 다음 큰 값인 배열.length-2를 곱해주면 배열의 가장 큰 최대 값이 만들어진다. import java.util.Arrays; class Solution { public int solution(int[] numbers) { int max = 0; Arrays.sort(numbers); max = numbe..
[프로그래머스] Lv0. 배열 뒤집기 ■ 문제 정수가 들어 있는 배열 num_list가 매개변수로 주어집니다. num_list의 원소의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성해주세요. 이번 문제를 풀면서 가장 중점적으로 생각해야 할 것은 배열의 기본 개념이다. 이 문제를 풀면서 실수 했던 것 중에 하나는 초기값 없이 배열 변수를 만들때에는 반드시 길이에 대한 숫자값이 필요하다는 점을 인지하지 못한 것이다. 초기값 없이 배열 변수를 만들 때는 반드시 배열의 크기를 지정해주어야한다. 그렇지 않았을 때는, Arrayindexoutofboundsexception 이 발생하게 된다. class Solution { public int[] solution(int[] num_list) { int[] answer = ne..
[프로그래머스] Lv0. 최대값과 최소값 구하기 ■ 문제 설명 문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요. 예를들어 s가 "1 2 3 4"라면 "1 4"를 리턴하고, "-1 -2 -3 -4"라면 "-4 -1"을 리턴하면 됩니다. ■ 제한 조건 s에는 둘 이상의 정수가 공백으로 구분되어 있습니다. class Solution { public String solution(String s) { String answer = ""; String[] numbers = s.split(" "); int min = Integer.MAX_VALUE; int max = Integer.MIN_VALUE; System.ou..