반응형
JAVA에서 PUSH,POP을 이용해서 괄호의 쌍이 맞는지 확인해주는 프로그램입니다. LinkedList를 통해서 구현해보았습니다.
import java.util.*;
public class CheckRrace {
public static void main( String[] args )
{
String s = "( 4 + [ 3 + { x - y } / 2 ] ) * 7 ";
LinkedList<Character> stack = new LinkedList<Character>();
for(int i=0; i<s.length(); i++)
{
char c = s.charAt(i);
if ( c=='(' || c=='[' || c=='{' )
{
stack.push( c );
System.out.println( stack );
}
if ( c==')' || c==']' || c=='}' )
{
if ( stack.isEmpty() )
{
System.out.println("Not match");
System.exit(1);
}
char d = stack.pop();
System.out.println( stack );
if ( ( c==')' && d!='(' ) || ( c==']' && d!='[' ) || ( c=='}' && d!='{' ) )
{
System.out.println("Not match");
System.exit(1);
}
}
} // for
if ( !stack.isEmpty() )
{
System.out.println("Not match");
System.exit(1);
}
System.out.println("Match");
} // main
}
반응형
'혼자 공부하는 것들 > JAVA' 카테고리의 다른 글
JAVA) jlabel, swing으로 카페매출관리 제작(+MySql)데이터 (삽입,삭제,검색,수정 포함) (0) | 2020.07.18 |
---|---|
JAVA) 문자열뒤집기 +LinkedList사용 (0) | 2020.07.18 |
JAVA) 로또 번호 생성기 +HashSet 사용 (0) | 2020.07.18 |
JAVA)DAY +1일하기 || +윤년추가 (0) | 2020.07.18 |
JAVA)알람시계 클래스 만들기 (0) | 2020.07.18 |
댓글