자바 알고리즘(문자열 문제) 질문드립니다


"A"|"B""AAA""CD"|"EF" (변형전) 와 같은 텍스트가 StringBuilder 에있고

(A|B)?(A)?(A)?(A)?(C(D)?|E(F)?)? (변형후)

이런식으로 변환하려합니다.

알파벳은 임의로 아무 알파벳이나 들어올수있고, 파이프 기호(|) 또한 두개이상 들어올 수 있는 상황입니다. 파이프가 있을경우에는 두개로 묶어서 한 버퍼에 넣고, 그걸 변환한뒤 버퍼를 지우는식으로 짤 계획인데,

하나씩 버퍼에서 끄집어내서 비교하는 방식으로 알고리즘을 짜려고하는데 너무 복잡해서 잘 안되네요 도움주시면 감사하겠습니다 ㅠㅠㅠ

[code]

for (int i = 0; i < buffer.length(); i++) {

char literalChar = buffer.charAt(i); //여기서 뽑아서 한글자씩 비교

}

if(literalChar == '\"') {

//" flag

choice = !choice;

count = 0;

//continue;

} else if(literalChar == '|') {

//파이프일때

}

  • 2017년 12월 07일에 작성됨

  • 규칙을 파악해야 로직을 세우겠죠. "CC"|"DD" 는 어떻해 되는겁니까?    정영훈   2017.12.8 01:05     
조회수 58


로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close