Seren dev's blog
자바의 정석 5장 : 배열
Programming/JAVA 2022. 12. 15. 15:17

이 글은 남궁성 님의 "자바의 정석: 기초편" 책을 읽고 정리한 내용입니다. 배열이란? "같은 타입의 여러 변수를 하나의 묶음으로 다루는 것" 배열은 각 저장공간이 연속적으로 배치되어 있다. int[] score; //배열 선언 score = new int[5]; //배열 생성 arr.length //배열의 길이이며 상수이다. 배열의 유효한 인덱스 범위가 아닌 인덱스로 접근하면 ArrayIndexOutOfBoundsException 예외가 발생한다. 배열 초기화 int[] score = new int[]{10, 20, 30}; int[] score = {10, 20, 30}; 선언과 생성을 따로 하면 new int[] 생략 불가능 int[] score; score = {10, 20, 30}; // 에러 ..

article thumbnail
[프로그래머스] Lv.1 : 숫자 문자열과 영단어 - 자바[Java]

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 enum 클래스 NumStr를 생성하여 대응되는 영단어와 숫자를 저장하고, replace() 메서드를 사용하여 영단어 NumStr.str부분을 숫자 NumStr.num으로 치환한다. 코드 import java.util.*; class Solution { static public enum NumStr { ZERO("zero", 0), ONE("one", 1), TWO("two", 2), THREE("three", 3), FOUR("four", 4), FIVE("five", 5), SIX("six", 6),..

article thumbnail
[프로그래머스] Lv.2 : [1차] 뉴스 클러스터링 - 자바[Java]

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 입력으로 들어온 각 문자열에 대해 두 글자씩 끊어서 Map에 (글자쌍, 글자쌍이 현재 문자열에서 등장한 횟수)를 저장한다. 똑같은 문자열이 두 번 이상 등장할 수 있는데, 이후 교집합이나 합집합을 구할 때 두 문자열에서 공통적으로 등장하는 글자쌍인 경우, 각 문자열의 해당 글자쌍이 등장한 횟수가 필요하기 때문에 Map을 사용하여 글자쌍이 현재 문자열에서 등장한 횟수도 저장해야 한다. 그 다음 교집합 원소의 개수와 합집합 원소의 개수를 구해 답을 반환한다. 로직 1. convertStrToPair() 메서..

article thumbnail
[프로그래머스] Lv.1 : [1차] 비밀지도 - 자바[Java]

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다행히 지도 암호를 해독할 방법을 적어놓은 메모도 함께 발견했다. 지도는 한 변의 길이가 n인 정사각형 배열 형태로, 각 칸은 "공백"(" ") 또는 "벽"("#") 두 종류로 이루어져 있다. 전체 지도는 두 장의 지도를 겹쳐서 얻을 수 있다. 각각 "지도 1"과 "지도 2"라고 하자. 지도 1 또는 지도 2 중 어느 하..