전체 글141 [JAVA] 원금 2배되는 기간 문제: 원금 2배되는 기간 해결 과정 기간이 되는 것 선언 -> 빠진 것: 연이율, 원금 if문 사용해서 2배가 되는 조건 걺 -> if문이 아니라 while을 사용해서 조건이 만족되면 year을 올려야 됨 -> 조건: 원금*연이율이 2배가 되기 전까지 구현 public class Main { public int computeWhenDouble(double interestRate) { // TODO: double rate = 1 + interestRate / 100; //연이율 double principal = 1; //원금 int year = 0; //기간 while (principal < 2){ principal = principal * rate; year++; } return year; } } 2022. 10. 21. [JAVA] 백준 10818번 (배열) 문제 N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성 입력: 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수 출력: 첫째 줄에 주어진 정수 N개의 최솟값과 최댓값을 공백으로 구분해 출력 흐름 N개의 정수가 들어가는 배열 최댓값 최솟값을 구하기 -> for문을 사용해서 비교 -> 비교해서 풀려고 했는데, 구상이 잘 안돼서 sort로 바꿈 출력할 때 공백을 넣어줘야 됨 구현 import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); //사.. 2022. 10. 21. 재귀함수 재귀함수의 특징 재귀함수의 장점 코드 간결, 수정 용이 변수를 여러개 사용할 필요가없음 재귀함수의 단점 코드의 흐름을 직관적으로 파악하기 어려움 반복하여 매서드를 호출하며 지역변수, 매개변수, 반환값을 모두 process stack에 저장 → 반복문에 비해서 메모리를 더 많이 사용하게 되어 많은 메모리를 사용 메서드를 호출하고 매서드가 종료된 이후에 복귀를 위한 컨텍스트 스위칭 비용이 발생 재귀함수의 템플릿 public type recursive(input1, input2, ...) { // Base Case : 문제를 더 이상 쪼갤 수 없는 경우 if (문제를 더 이상 쪼갤 수 없을 경우) { return 단순한 문제의 해답; } // recursive Case // 그렇지 않은 경우 return 더 .. 2022. 10. 21. [JAVA] hashmap을 사용해 배열의 첫 요소와 마지막 요소 받기 hashmap을 사용해 배열의 첫 요소와 마지막 요소 받기 //첫 요소와 마지막 요소 HashMap을 리턴 package com.codestates.coplit; import java.util.*; public class Main { public HashMap transformFirstAndLast(String[] arr) { // TODO: if (arr.length == 0){ return null; } //빈 배열일 때 null 반환 HashMap result = new HashMap (); //결과를 받을 해쉬맵 생성 result.put(arr[0], arr[arr.length -1]); return result; } } `HashMap result = new HashMap ();` 결과를 받을 .. 2022. 10. 21. [JAVA] 재귀함수 연습 문제 1. 1부터 num까지의 합을 리턴 return num + sumTo(num -1); num에 -1을 빼서 n번째까지 계속 반복 2. 홀수인지 여부 확인 if (num == 0) return false; if (num == 1) return true;return isOdd(num -2) 계속 2씩 빼면서 0이나 1이 나올 때까지 반복 3. n! return num * factorial(num -1); n* n-1 반복 4. 피보나치 수열 return fibonacci(num -1) + fibonacci(num -2); 피보나치(앞에 두 수의 합) 5. 배열의 합 int head = arr[0]; int[] tail = Arrays.copyOfRange(arr, 1, arr.length); return h.. 2022. 10. 21. 부트캠프 한 달 회고 반성 부트캠프를 시작한지 어느덧 1달이라는 시간이 지났다. 초반에 잘 아는 내용이 나왔을 때는 수월하게 했지만, 익숙하지 않은 내용을 배우려니 이해하기가 점점 버거워졌다. 이번 달은 어쩌다보니 정규시간 외에 따로 공부를 거의 못했지만, 오늘부터는 공부 시간 외에도 개인적인 공부를 더 해야겠다. 목표 당일 복습 연습 문제 미리 풀기 개발 관련 서적 읽기 (동기부여를 위해) 백준 하루 3문제 매일 풀기 주 3회 이상 자전거 타기 2022. 10. 21. IntelliJ 단축키 Alt + Enter 현재 컨텍스트에 대한 액션을 표시 -> 수정하는데 사용 #오류 : 문제에 대한 수정 제안 목록이 표시됩니다. #경고 : 제안 중 하나 수락 가능 #그 외 : 인텐션 액션 및 활성화됐지만 경고 설정 안된 검사 표시 F2 다음 오류, 경고 또는 제안으로 점프 #Alt+Enter를 함께 사용하여 모든 제안을 표시하고 하나를 선택 #Shift+Alt+Enter를 사용해 첫 번째 제안을 적용 ⌘1 또는 Alt+1 프로젝트 창이 열리고 거기에 포커스가 위치 방향 키를 사용해 트리를 탐색하거나 입력하여 검색 Esc 에디터에 다시 포커스가 위치 열린 도구 창과 상관 없이 에디터에 다시 포커스가 위치 #변경 사항을 적용하지 않고 팝업 창을 닫기 ⌘E 또는 Ctrl+E 최근 실행했던 파일을 확인 ⌘B.. 2022. 10. 21. 학습방향 기록하는 습관 계획 - 학습 전 (10분) 학습을 시작하기 전 나의 현재 수준을 체크 오늘 학습 목표는? 이미 알고있는 내용은? 점검 및 평가 - 학습 후 (30분) -> 계획 단계의 답과 추가적인 것을 기록 #새롭게 배운 내용은? #배운 내용을 다른 사람에게 설명 가능한가? #이해되지 않은 불확실한 내용은 무엇인가? 의사코드 나중에 복잡한 코드를 제대로 설명하려면 지금부터 사소한 것이라도 계획, 순서를 작성하는 연습을 하자. 예시) 4개의 종이컵을 순서대로 뒤집어, 사탕을 찾기 의사코드 종이컵의 개수만큼, 종이컵을 하나씩 뒤집습니다. 뒤집은 종이컵에 사탕이 있다면, 먹는다. 코딩 for(int cupNumber=1; cupNumber 2022. 10. 21. 블로그 프로 이사러... 블로그를 또! 또! 이사한다... velog: 커스텀이 안돼서 뭔가...아쉬웠음 gitpage: 커스텀도 되고 정말 좋았지만... 글 올리기 불편하고, 커스텀을 하려면 html이나 css를 다뤄야 되는데...🥲 tistory: 스킨도 다양하고.. 편할 것 같아서 이사왔음! 2022. 10. 21. 불면증이라도 5분 안에 잠드는 방법 어렸을 때부터 지독한 불면증으로 자고 싶을 때 잔 적이 거의 없었다. 몸이 정말 피곤한 날이 아니면 30분~1시간은 꼭 잠들기 전에 허비하게 됐다. 심한 날은 2~3시간을 뒤척이기만 할 때도 있었다. 그러다 저번 일찍 일어나기 프로젝트를 하면서 처음으로 자고 싶은 순간을 내가 정해서 잘 수 있었다. 처음 겪는 일이라 너무 행복했고 머리만 대면 바로 자는 사람의 기분을 느낄 수 있었다. 이후로 계속 이 방법을 실천했고, 아무리 머리가 말똥하고 잠이 안오는 상태더라도 5분이면 잘 수 있게 됐다. 그래서 어떻게 하면 바로 잘 수 있을까? 기본적으로 꼭 지켜야 하는 조건이 있다. 1. 무념무상의 상태 ★★★★★ (가장 중요!) 말 그대로 아무 생각도 하면 안된다. 그저 내가 지금 숨을 쉬고 있다는 사실에.. 2022. 3. 17. 이전 1 ··· 11 12 13 14 15 다음 728x90