코테/프로그래머스

[프로그래머스/Lv. 0] 한 번만 등장한 문자

imname1am 2023. 2. 9. 12:32
반응형

내 코드

import java.util.*;

class Solution {
    public String solution(String s) {
        String answer = "";
        String newAns = "";
        
        for(int i=0 ; i < s.length() ; i++) {
            if(countChar(s, s.charAt(i)) == 1) {
                answer += String.valueOf(s.charAt(i));
            }
        }
        
        String[] sArr = answer.split("");
        Arrays.sort(sArr);
        
        for(String str : sArr) {
            newAns += str;
        }
        
        return newAns;
    }
    
    public int countChar(String str, char ch) {
        return str.length() - str.replace(String.valueOf(ch), "").length();
    }
}

9-10번째 줄   |    countChar() 함수를 정의해서 특정 문자 갯수 세기

14-15번째 줄 |   새 문자열 배열을 만들어서 정렬하고

17-19번째 줄 |   얘를 다시 새 문자열로 만들기

 

다른 코드

class Solution {
    public String solution(String s) {
        
        int[] alpha = new int[26];
        
        for(char c : s.toCharArray()) {
        	alpha[c - 'a']++;
        }
        
        
        StringBuilder answer = new StringBuilder();
        
        for(int i=0 ; i < 26 ; i++) {
        	if(alpha[i] == 1) {
            	answer.append((char)(i + 'a'));
            }
        }
        
        return answer.toString();
    }
}

String.toCharArray() : string을 char형 배열로 바꿈.

StringBuilder : 변경 가능한 문자열 생성

.toString() :  객체가 가진 값을 문자열로 만들어 리턴

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr


(참고)

 

[JAVA] 문자열에서 특정 문자의 개수 세기

1. 반복문 이용하기 public class CharCountTest { public static void main(String[] args) { String str = "soultree"; System.out.println(countChar(str, 's')); //1 System.out.println(countChar(str, 'o')); //1 System.out.println(countChar(str, 'u')); //1

soultree-for-good.tistory.com

 

Java에서 문자열 배열을 알파벳순으로 정렬

이 게시물은 Java에서 문자열 배열을 알파벳순으로 정렬하는 방법에 대한 모든 것입니다.

www.delftstack.com

 

[Java] - String.toCharArray() 사용법

How to Use - String.toCharArray()

velog.io

 

[JAVA] StringBuilder란? StringBuilder 사용법

자바에서 문자열하면 String을 대개 많이 떠올리고 사용할 것이다. 그런데 이 문자열이 1개 이상 있어서 이것들을 더해야 한다고 하면 어떤 방법을 쓸 수 있을까? 간단하게는 이 방법을 쓸 수 있을

onlyfor-me-blog.tistory.com

 

자바 String toString()

Object 이란 모든 클래스의 가장 최상위 클래스인 "Object" 클래스 JAVA에 제공하는 모든 클래스들의 계층 구조로 되어있고, 그 최상위로 올라가면 "Object"이라는 클래스가 존재한다. 우리가 일반적으

selfdevelope.tistory.com

 

반응형