본문 바로가기

전체 글141

[JAVA] 문자열의 첫 글자 구하기 public class Solution { public String firstCharacter(String str) { // 빈 문자열은 빈 문자열 리턴 if (str.length() == 0) return ""; //split(): 구분자를 기준으로 배열형식의 문자열을 잘라줌 //words 배열을 " "를 기준으로 자름 String[] words = str.split(" "); String result = ""; //charAt(): 문자열 중 한글자만 선택해 char 타입으로 변환 //for문을 사용해 result에 words의 단어 중 첫 글자만 가져옴 for (int i = 0; i < words.length; i++) { result = result + words[i].charAt(0); } r.. 2022. 10. 21.
[JAVA] 백준2438 (별찍기-1) 문제: 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 입력: 첫째 줄에 N(1 ≤ N ≤ 100) 출력: 첫째 줄부터 N번째 줄까지 차례대로 별을 출력 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int count = Integer.parseInt(br.readLine()); b.. 2022. 10. 21.
자료구조 자료구조? 데이터를 효율적으로 다룰 수 있는 방법 예) Stack, Queue, Tree, Graph Stack 데이터(data)를 순서대로 쌓는 자료구조 1. 특징 : 후입선출 입력과 출력이 하나의 방향으로 이루어지는 제한적 접근(LIFO(Last In First Out) 혹은 FILO(First In Last Out)) 데이터를 넣는 것을 &#39;PUSH&#39;, 데이터를 꺼내는 것을 &#39;POP&#39; 한꺼번에 여러 개를 넣거나 뺄 수 없음 2. 명령어 Integer형 스택 선언 Stack stack = new Stack(); push(): 스택에 데이터를 추가 pop(): 가장 나중에 추가된 데이터를 스택에서 삭제하고 삭제한 데이터를 리턴 3. Arraylist와 Stack ArrayLi.. 2022. 10. 21.
Stack & Queue 구현 Stack push 스택에 데이터를 추가 public void push(Integer data) { listStack.add(data); } pop 가장 나중에 추가된 데이터를 스택에서 삭제하고 삭제한 데이터를 리턴 public Integer pop() { if(listStack.size() == 0) { return null; }else { return listStack.remove(listStack.size() - 1); } } size 스택에 추가된 데이터의 크기를 리턴 public int size() { return listStack.size(); } peek 가장 나중에 추가된 데이터를 리턴 public Integer peek() { if(listStack.size() == 0) { return.. 2022. 10. 21.
[JAVA] 2의 거듭제곱인지 확인 package com.codestates.coplit; import java.util.*; public class Solution { public boolean powerOfTwo(long num) { //2의 n승이면 true if (num == 1) return true; //2의 n승이 아니면 false 리턴 if (num % 2 != 0) return false; //2의 n승을 구해주는 powered long powered = 2; while (powered < num) { powered = powered * 2; } return powered == num; } } 2022. 10. 21.
[JAVA] 백준 11729번 (하노이의 탑) import java.util.Scanner; public class B11729 { public static StringBuilder sb = new StringBuilder(); //StringBuilder? public static void main(String[] args) { Scanner in = new Scanner(System.in); int num = in.nextInt(); //원판 이동 회수 구하기기 sb.append((int) (Math.pow(2,num) - 1)).append('\n'); Hanoi(num, 1, 2, 3); System.out.println(sb); } public static void Hanoi(int num, int start, int mid, int to).. 2022. 10. 21.
[JAVA] 백준 10870 (피보나치 수열) /* 백준 10870번 (피보나치 5번) 문제: Fn = Fn-1 + Fn-2 (n ≥ 2) n번째 피보나치 수를 구하는 프로그램 입력: 첫째 줄에 n이 주어진다. n은 20보다 작거나 같은 자연수 또는 0 출력: 첫째 줄에 n번째 피보나치 수를 출력 */ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class B10870 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); //Inp.. 2022. 10. 21.
[JAVA] 10872번 (재귀) 문제: 0보다 크거나 같은 정수 N. N!을 출력하는 프로그램을 작성 입력: 첫째 줄에 정수 N(0 ≤ N ≤ 12) 출력: 첫째 줄에 N!을 출력 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int N = in.nextInt(); in.close(); int sum = factorial(N); System.out.println(sum); } public static int factorial(int number) { if (number for문을 사용해서 -> i번째까지 계속 서로 곱하게 -> for문을 사용하니까 재귀를 활용하기.. 2022. 10. 21.
[JAVA] 백준2562번 (배열) 문제 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지 입력 : 첫째 줄부터 아홉 번째 줄까지 한 줄에 하나의 자연수가 주어짐 출력 : 첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 몇 번째 수인지 흐름 스캐너로 num을 받기 for문 9번까지 반복해서 입력하기 첫째줄 최대값, 둘째줄 최대값이 몇 번째 수인지 import java.util.Scanner; public class B2562 { public static void main(String[] args) { //수를 입력받기 /* Scanner in = new Scanner(System.in); int num = in.nextInt(); int[] arr = new int[9]; for (int i = .. 2022. 10. 21.
[JAVA] Json 페어 문제 JSON? JavaScript Object Notation -> 데이터 교환을 위해 만들어진 객체 형태의 포맷 JSON과 JS의 차이 JSON.stringify() 메서드는 JavaScript 값이나 객체를 JSON 문자열로 변환합니다. 선택적으로, replacer를 함수로 전달할 경우 변환 전 값을 변형할 수 있고, 배열로 전달할 경우 지정한 속성만 결과에 포함합니다. 문자 반환 재귀함수 문제 페어 풀이 import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import org.w3c.dom.ls.LSOutput; import java.util.*; public.. 2022. 10. 21.
728x90