목록2025/02/28 (3)
개발지식 먹는 하마 님의 블로그
문자열을 응용하는 문제를 하나 풀이했다.GUI에서 구현하는 계산기와 이번 문제풀이에 유용하게 사용한 Pattern과 Matcher에 대해서 정리했다.마지막으로 계산기 도전 기능 구현을 완료했고 마지막으로 한 번더 검토하는 과정에 있다.📚 학습 내용 정리문자열 문제 풀이Pattern과 Matcher를 사용해 풀이했다.https://devhippo.tistory.com/76 1316번 - 그룹 단어 체커✏️ 문제 풀이새로운 문자일 경우 이를 저장한다.중복을 허용하지 않는 HasgSet을 사용하였다.HashSet seen = new HashSet();현재 문자가 이전 문자와 다를 경우, 이 문자가 나온 적이 있는지 확인한다.codevhippo.tistory.com Pattern과 Matcherhttps://..
Pattern과 Matcher는 Java의 정규 표현식(Regax)을 처리하는 클래스이다.이를 사용하면 문자열을 좀 더 자유자재로 다룰 수 있다.Pattern 정규 표현식을 컴파일하여 Matcher 객체를 생성한다.한 번 생성되면 변경할 수 없다. compile(String regex) 정규식을 컴파일하여 Pattern 객체를 생성한다. compile(String regex, int flags) 특정 플래그와 함께 컴파일한다. matches(String regex, CharSequence input) 문자열이 정규식과 완전히 일치하는지 확인한다. split(CharSequence input) 문자열을 분리하여 배열로 반환한다. MatcherPattern 객체를 사용해 문자열과 패턴을 비교한다.matche..

✏️ 문제 풀이새로운 문자일 경우 이를 저장한다.중복을 허용하지 않는 HasgSet을 사용하였다.HashSet seen = new HashSet();현재 문자가 이전 문자와 다를 경우, 이 문자가 나온 적이 있는지 확인한다.contains는 해시 테이블 기반 검색을 하기 때문에 for문 사용해 직접 검사하는 것보다 빠르다.나온적이 있다면 그룹 단어가 아니다. 아니라면 해당 문자를 저장한다.for (char ch : word.toCharArray()) { if (ch != prev) { // 새로운 문자일 경우만 검사 if (seen.contains(ch)) { // 이미 나온 문자라면 그룹 단어가 아님 return false; } seen.a..