프로그래머스 코딩테스트 연습 입문단계 '배열의 유사도' 문제입니다.
https://school.programmers.co.kr/learn/courses/30/lessons/120903
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
❓문제 설명
두 배열이 얼마나 유사한지 확인해보려고 합니다. 문자열 배열 s1과 s2가 주어질 때 같은 원소의 개수를 return하도록 solution 함수를 완성해주세요.
문제 이해가 잘 되지 않는다면 아래에 입출력 예시표를 참고하세요.
⚠️ 제한사항 및 입출력 예시표
- 1 ≤ s1, s2의 길이 ≤ 100
- 1 ≤ s1, s2의 원소의 길이 ≤ 10
- s1과 s2의 원소는 알파벳 소문자로만 이루어져 있습니다
- s1과 s2는 각각 중복된 원소를 갖지 않습니다.
s1 (입력) | s2 (입력) | result (출력) |
["a", "b", "c"] | ["com", "b", "d", "p", "c"] | 2 |
["n", "omg"] | ["m", "dot"] | 0 |
✏️ 직접 구현한 코드
import java.util.Arrays;
import java.util.ArrayList;
import java.util.List;
class Solution {
public int solution(String[] s1, String[] s2) {
List<String> l1 = new ArrayList<>(Arrays.asList(s1));
List<String> l2 = new ArrayList<>(Arrays.asList(s2));
l1.retainAll(l2);
return l1.size();
}
}
🗣️ 코드 설명
- 먼저 사용할 클래스 세 개를 import 해줬습니다.
- s1과 s2배열을 담을 List를 만들어 배열 각각을 담았습니다.
- ArrayList 클래스의 retainAll 메서드를 이용해, l1 리스트에 l1과 l2의 중복되는 값을 담았습니다.
- 마지막으로 size 메서드를 이용해, l1과 l2의 중복되는 값을 담은 l1의 크기를 리턴했습니다.
코드를 구현할 때 구글링해서 참고했던 블로그 4개 ▼
https://mainia.tistory.com/2323
자바(Java) 리스트(List,ArrayList) 이용하는 방법
자바 리스트 클래스들은 List 와 ArrayList 가 있습니다. 리스트는 배열의 한계 때문에 만들어진 자료형입니다. 배열을 사용하기 위해서는 크기를 정해야 합니다. 그런데 프로그래밍 중에 동적으로
mainia.tistory.com
https://recordsoflife.tistory.com/582
Java에서 ArrayList의 용량과 배열의 크기
1. 개요 Java를 사용하면 고정된 크기의 배열을 만들거나 컬렉션 클래스를 사용하여 유사한 작업을 수행할 수 있습니다. 이 예제에서는 ArrayList 의 용량 과 Array의 크기의 차이를 살펴보겠습니다 .
recordsoflife.tistory.com
https://hianna.tistory.com/608
[Java] 두 개의 List를 비교하여, 서로 중복되는 값 찾기
두 개의 List를 비교하여, 서로 중복되는 값을 찾기 위해서 Collection 객체의 retainAll() 메소드를 사용할 수 있습니다. java.util.Collection의 retainAll() boolean retainAll(Collection c) retainAll() 메소드는 파라미터
hianna.tistory.com
https://hianna.tistory.com/551
[Java] 배열을 List로, List를 배열로 변환하기
배열을 List로 Arrays.asList() new ArrayList(Arrays.asList()) Collectors.toList() ArrayList를 배열로 toArray() - java.util.List 배열을 List로 1. Arrays.asList() 코드 import java.util.Arrays; import java.util.List; public class ArrayConversion
hianna.tistory.com
'코딩테스트 회고록 > 코테_Java' 카테고리의 다른 글
[JAVA] 프로그래머스 - 짝수 홀수 개수 (0) | 2023.02.16 |
---|---|
[JAVA] 프로그래머스 - 피자 나눠 먹기 (1) (2) | 2023.02.15 |
[JAVA] 프로그래머스 - 배열 뒤집기 (0) | 2023.02.15 |
[JAVA] 프로그래머스 - 양꼬치 (0) | 2023.02.14 |
[JAVA] 프로그래머스 - 배열의 평균값 (0) | 2023.02.14 |