JewelsAndStones

2020. 8. 26. 19:30·개발중/Algorithm
728x90
반응형

 

오늘은 문자열에서 존재하는 알파벳애서 내가 원하는 알파벳의 개수를 찾는

알고리즘을 풀었다.

 

 

 

 

 

 

 

S 라는 문자열에서

 

 

 

 

 

J 라는 문자열을 분리해서 생각하고

이 문자의 개수를 추출한다.

 

 

 

중복을 허용하지 않는 HeshSet 을 사용한다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

toCharArray 는 문자열을 문자 배열로 만든다.

 

jew 를 문자로 하나씩 만들고

 

set 에 add 시킨다.

 

 

 

 

 

 

 

 

 

 

 

이번에는

stone 의 문자열을 문자 배열로 가져오는 구나

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

contains() 함수는

대상 문자열에 특정 문자열이

포함되어 있는지

확인하는 함수이다.

 

 

 

 

 

 

stonChar의 문자가 set에 존재하니?

 

존재한다면 1씩 증가해

 

 

 

 

 

 

그럼 내가 count 로 반환 해줄께

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

package soobin;

import java.util.HashSet;
import java.util.Set;

public class JewilsAndStones {
	
	public static void main(String[] args) {
		String J = "aA", S = "aAAbbbb";
		System.out.println(solve(J,S));
	}

	// Hesh Set 은 중복을 허용하지 않는다
	public static int solve(String jew, String stone) {
		
		Set<Character> set = new HashSet<>();
		
		for( char jewel : jew.toCharArray()) {
			set.add(jewel);
		}
		
		int count = 0;
		
		for(char stoneChar : stone.toCharArray()) {
			System.out.println("stoneChar : "+ stoneChar);
			if( set.contains(stoneChar)) {
				count++;
			}
		}
		return count;
	}
}
728x90
반응형

'개발중 > Algorithm' 카테고리의 다른 글

LicensKeyFormatting  (0) 2020.08.26
MeetingRoom2 응용 (정)  (0) 2020.08.26
MeetingRoom2  (0) 2020.08.25
Merge 알고리즘  (0) 2020.08.24
Daily Temperature  (0) 2020.08.23
'개발중/Algorithm' 카테고리의 다른 글
  • LicensKeyFormatting
  • MeetingRoom2 응용 (정)
  • MeetingRoom2
  • Merge 알고리즘
Binsoo
Binsoo
내 트러블 슈팅
  • Binsoo
    정수빈 기술블로그임.
    Binsoo
  • 전체
    오늘
    어제
    • 빈수 개발자 개발 일기 (939)
      • 개발중 (635)
        • Spring Boot (95)
        • Spring Security (2)
        • Spring Batch (6)
        • Spring Boot & Redis (13)
        • Java Persistence API (JPA) (28)
        • Web (42)
        • Rest Api (7)
        • Spring Concurrency Control (3)
        • Redis (8)
        • Kubernetes (k8s) (4)
        • MYSQL (35)
        • AirFlow (15)
        • Docker (2)
        • Git (22)
        • Linux (9)
        • JSON Web Tokens (JWT) (4)
        • Troubleshooting (88)
        • Swagger (0)
        • Vue.js (52)
        • Java (74)
        • html (12)
        • C (5)
        • jQuery (15)
        • JavaServer Pages (JSP) (17)
        • Arduino (1)
        • JavaScript (35)
        • Amazon Web Services (AWS) (11)
        • Algorithm (9)
        • 참고 기능 (18)
        • mongo (2)
      • PROJECT (27)
        • 스프링부트+JPA+몽고 API 개발 (3)
        • MINI (2)
        • 게시판 (3)
        • vue 프로젝트 (1)
        • JPA 사이드 프로젝트 기록 (17)
      • TEAM STUDY (156)
        • 가상 면접 사례로 배우는 대규모 시스템 설계 기초 (8)
        • 한 권으로 읽는 컴퓨터 구조와 프로그래밍 (12)
        • NAVER DEVELOPER (4)
        • LINUX (23)
        • PYTHON (19)
        • SERVER (8)
        • 알고리즘 코딩 테스트 스터디 (31)
        • 쿠버네티스 (40)
        • 대세는 쿠버네티스 [초급~중급] (11)
      • BOOK (0)
      • 자격증 (61)
        • 리눅스 1급 - 필기 기록 (19)
        • 네트워크 관리사 (2)
        • 네트워크 관리사 2급 - 실기 기록 (21)
        • 네트워크 관리사 2급 - 필기 기록 (16)
        • 정보처리 (2)
      • 직장인 대학원 (18)
        • 기록 (3)
        • 캐글 스터디 (3)
        • R (12)
      • 논문 (5)
  • 블로그 메뉴

    • 홈
    • 태그
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    VUE
    네트워크 관리사 학점
    네트워크 관리사 자격증
    스프링
    docker
    네트워크 관리사 요약
    리눅스 마스터
    리눅스 마스터 1급 정리
    리눅스 마스터 1급
    jpa
    java
    리눅스 마스터 요약
    redis
    리눅스 1급 요약
    쿠버네티스
    쿠버네티스 스터디
    네트워크 관리사 2급
    리눅스 마스터 1급 요약
    네트워크 관리사 2급 실기
    네트워크 관리사 실기
    네트워크 관리사
    springboot
    REST API
    알고리즘
    파이썬 알고리즘
    git
    파이썬
    Spring
    Git 저장소
    BackendDevelopment
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
Binsoo
JewelsAndStones
상단으로

티스토리툴바