inflearn logo
강의

講義

知識共有

コーディングテストの前に知っておくべき概念と問題(with Java)

問題2)スタックの利用

질문 드립니다!

249

lisasje0225

投稿した質問数 1

1

public String solve(String s) {

Stack<Integer> countStack = new Stack<>();

Stack<StringBuilder> stringStack = new Stack<>();

StringBuilder tmp = new StringBuilder();

StringBuilder result = new StringBuilder();

int k = 0;

for(char c : s.toCharArray()) {

if(Character.isDigit(c)) {

k = k*10 +c-'0'; //1, 12

}

else if(c =='[') {

countStack.push(k);

tmp = new StringBuilder();

k=0;

}

else if(c ==']') {

System.out.println("~~~~~" + tmp);

stringStack.push(tmp);

StringBuilder str = stringStack.pop();

for(int i=countStack.pop();i>0; i--) {

System.out.println("!!!!!!!!!!!!!!" + tmp);

str.append(tmp);

}

result.append(str);

}

else {

tmp.append(c);

}

}

return result.toString();

}

}

=======================

~~~~~ 와 출력되는 tmp가 맞는 출력입니다

!!!!!!!!!!!!!!와 출력되는 동일한 tmp는 위의 출력결과의 두배로 출력됩니다ㅜ

해결법을 찾지 못하여 질문 드립니다.

감사합니다.

java 코테 준비 같이 해요!

回答 1

0

pushupman

 

lisasje0225 님 안녕하세요~

 

질문주신 내용:

!!!!!!!!!!!!!!와 출력되는 동일한 tmp는 위의 출력결과의 두배로 출력됩니다ㅜ

 

 

답변:

StringBuilder tmp = new StringBuilder();

StringBuilder result = new StringBuilder();

2개를 만드신 이유가 무엇인지요? 제가 의도를 정확히 이해를 못했네요

 

일단 아래그림에서 보면

'[' 로 진입시점에 result를 초기화 해줍니다.

제안드리고 싶은것은

1. 담을 그릇을 하나로 가져가기 

2. 담을 때 초기화 해주기 

 

제 답변이 빈약할수 있습니다.  혹시 더 궁금하신부분은 다시 질문 주세요

감사합니다.

PriorityQueue

1

337

1

면적을 구하는 res를 for문 내에 있는 if문 안에 넣으면 되지 않나요?

1

312

1

강의에 있는 자료구조만 공부하면 되나요??

1

231

1

bfs, dfs 강의 자료

1

244

1

문제가 이해가 안가요

1

325

1

만약 문자열이 매칭되는 조건("arrest", "test")이 문자열의 인덱스 기준 뒤에서부터 발생하면 어떻게 풀어야할까요?

2

436

1

그림이 잘 이해되지 않습니다.

1

184

1

어떤 문제인지에 대한 설명이 없어서 이해가 안가네요;;

1

302

3

강사님 문제가 잘 이해가 안가요

3

182

1

merge함수 질문 있습니다.

1

227

1

dp 강의자료 어딧어요??

1

380

2

응용문제4) DFS 응용문제 질문이요!

1

163

1

Dp HouseRobber 질문

1

224

1

DP 1분 간단 영상이 보이지 않습니다.

1

286

1

스택 문제 영상이 추가적으로 들어갔습니다.

1

159

1

list 질문입니다

2

191

1

DP문제 문의

1

238

2

Comparator 질문입니다.

1

470

2

안녕하세요. 질문입니다.

1

264

1

BFS 게임 맵 최단거리 문의

1

330

3

코딩테스트 처음 입문 했는데 질문이 있습니다.

1

156

1

안녕하세요. 수강생입니다. 이 강의만 전부 소스 보낼 수 있을까요?

1

160

1

추가 강의 문의.

1

369

3

개념 설명이 잘못나온거 같습니다.

1

160

1