본문 바로가기

Algorithm (Java)/인프런 알고리즘강의

[인프런/알고리즘] 문자열 - 특정문자 뒤집기

문제

 

- Character.isAlphabetic(문자) : boolean반환

- lt, rt 포인터 쓰기

- String클래스 valueOf() 메소드 : 문자열을 반환하는 메소드, 아래 코드에선 char형배열을 String으로 반환함

 

package prep.test.coding;

import java.util.ArrayList;
import java.util.Scanner;

public class ReverseWordOnCondition {
	public String solution(String str) {
		String answer = "";
		
		char[] charArr = str.toCharArray();
		int lt = 0;
		int rt = str.length()-1;
		
		while(lt < rt) {
			if(!Character.isAlphabetic(charArr[lt])) lt++;
			else if(!Character.isAlphabetic(charArr[rt])) rt--;
			else {
				char tmp = charArr[rt];
				charArr[rt] = charArr[lt];
				charArr[lt] = tmp;
				
				lt++;
				rt--;				
			}
			
		}
		
		answer = String.valueOf(charArr);
		
		return answer;

	}
	
	public static void main(String[] args){
		ReverseWordOnCondition rw = new ReverseWordOnCondition();
		Scanner sc = new Scanner(System.in);
		String input = sc.next();
		
		System.out.println(rw.solution(input));
	}

}

 

출처

 

 

https://www.inflearn.com/course/%EC%9E%90%EB%B0%94-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%EB%AC%B8%EC%A0%9C%ED%92%80%EC%9D%B4-%EC%BD%94%ED%85%8C%EB%8C%80%EB%B9%84

 

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비 - 인프런 | 강의

자바(Java)로 코딩테스트를 준비하시는 분을 위한 강좌입니다. 코딩테스트에서 가장 많이 출제되는 Top 10 Topic을 다루고 있습니다. 주제와 연동하여 기초문제부터 중급문제까지 단계적으로 구성

www.inflearn.com