Java/공부20 [JAVA] 예제로 Hash map 공부하기 [문제] 해시 포켓몬 문제 문제 설명 홍 박사님은 당신에게 자신의 연구실에 있는 총 N마리 포켓몬 중에서 N/2마리를 가져가도 좋다고 했다. 홍박사님은 연구실의 포켓몬 종류에 따라 번호를 붙였다. 같은 종류의 포켓몬은 같은 번호를 가지고 있다. 당신은 최대한 다양한 종류의 포켓몬을 가지길 원하기 때문에 최대한 많은 포켓몬을 포함해서 N/2마리를 선택하려고 한다. N마리 포켓몬의 종류 번호가 담긴 배열 nums가 매개변수로 주어질 때, N/2마리의 포켓몬을 선택하는 방법 중 가장 많은 종류의 포켓몬을 선택하는 방법을 찾아 종류 번호의 개수를 return하도록 solution 함수를 완성하라. 코드 import java.util.*; class Solution { public int solution(int[.. 2023. 7. 25. 배열의 선언과 초기화 예제에 적용해보기 문제 코드 public String[] solution(String[] strArr) { String[] answer = new String[strArr.length]; //배열 초기화 for (int i = 0; i < strArr.length; i++) { answer[i] = ""; } for(int i = 0 ; i 2023. 7. 21. 예제로 arrayList 공부하기 import java.util.ArrayList; public class ListPractice1 { public int[] solution(String myString) { ArrayList b = new ArrayList (); int length = 0; //나눠서 리스트에 저장하기 for(char ch : myString.toCharArray()){ if(ch != 'x'){ length++; }else{ b.add(length); length = 0; } } //마지막 length 넣기 if(length>=0){ b.add(length); } //리스트를 answer배열에 넣기 int[] answer = new int[b.size()]; for(int i =0; i 2023. 7. 19. trim() split("\\s") split("\\s+") trim() 문자열의 앞 뒤의 공백을 지워주는 메소드 String w = " hello "; w.trim(); //hello split("\\s") 문자열 사이의 공백을 지워주는 메소드 String w2 = "hello world"; w2.split("\\s"); //helloworld split("\\s+") 문자열 사이의 공백 문자열을 지워주는 메소드 String w3 = "hellojavagood"; w3.split("\\s+"); //hellojavagood //split("\\s") 사용하면 공백 문자열도 인식해서 "hello","","","java","","","good"으로 나온다. 2023. 7. 18. StringBuilder() 프로그래머스에서 다른 분들이 푼 방식을 보면 stringbuilder를 꽤 사용하신다. 프로젝트하면서는 사용한 경험이 없는데 많은 사람들이 사용한는 것을 보니 알아두면 좋을 것 같다. StringBuilder는 문자열을 동적으로 처리하기 위한 클래스이다. 가변 크기의 문자열을 처리한다. 문자열을 변경할 때마다 새로운 문자열 객체를 생성하는 string과 달리 내부에서 문자열 수정을 하는 방식으로 처리한다. 문자열 처리에서 발생하는 객체 생성과 소멸을 효율적으로 처리할 수 있다는 면에서 성능적인 부분을 고려했을 때 사용하기 좋은 방법이라고 생각한다. 사용방법은 아래와 같다. StringBuilder name = new StringBuilder(); 1. 문자열 추가 append()메소드를 사용하여 문자열 .. 2023. 7. 12. [JAVA] 예제로 2차원 배열 생성 연습하기 [문제] 프로그래머스 정사각형만들기 public int[][] solution(int[][] arr) { int i = arr.length; int j = arr[0].length; int maxLength = Math.max(i,j); int [][] answer= new int[maxLength][maxLength]; for(int k = 0 ; k 2023. 7. 7. 이전 1 2 3 4 다음