

๐พ ์๊ณ ๋ฆฌ์ฆ
- ๋ ๊ฐ์ ์คํ์ผ๋ก ๋๋ ์ ํ ์๋ ์์ง๋ง ์ฐ๊ฒฐ๋ฆฌ์คํธ์ listIterator ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํด์ ํ์ด๋ณด์๋ค
- <, >, - ์ด ์ธ๊ฐ์ง์ ๋ํด ๋ถ๋ฅ๋ง ์ ํด์ฃผ๋ฉด ๋จ
- ์ปค์์ด๋์ ๋ํด listIterator์ ๋ค ๋ช ์๋์ด ์์๊ธฐ ๋๋ฌธ์ ์์ํ์
๐พ ์์ค์ฝ๋
import java.io.*;
import java.util.*;
public class Main {
static LinkedList<Character> linkedList;
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
for(int i=0;i<N;i++){
linkedList = new LinkedList<>();
ListIterator<Character> list= linkedList.listIterator();
String str = sc.next();
for(int j=0;j<str.length();j++){
char c = str.charAt(j);
switch (c){
case '<':
if(list.hasPrevious()){
list.previous();
}
break;
case '>' :
if(list.hasNext()){
list.next();
}
break;
case '-':
if(list.hasPrevious()){
list.previous();
list.remove();
}
break;
default:
list.add(c);
}
}
StringBuilder sb = new StringBuilder();
for(char s:linkedList){
sb.append(s);
}
System.out.println(sb.toString());
}
}
}
๐ต๐ซ ๊ณต๋ถํด์ผ ํ ์
- ์ฐ๊ฒฐ๋ฆฌ์คํธ Iterator
- ๋ด๊ฐ ๋ชจ๋ฅด๋ ๋ฉ์๋๋ค ๋ฐฐ์ธ ๋๋ง๋ค ์ ๋ฆฌํ๊ธฐ!
'Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ์นดํซ - Lv2 (JAVA) (0) | 2024.10.21 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] ์ง์ง์ด ์ ๊ฑฐํ๊ธฐ - Lv.2 (Java) (0) | 2024.10.17 |
[ํ๋ก๊ทธ๋๋จธ์ค] ๊ฐ์ฅ ํฐ ์ - Lv.2 (JAVA) (0) | 2024.04.23 |
[BOJ_2579]๊ณ๋จ์ค๋ฅด๊ธฐ(์ค๋ฒ 3) - JAVA (0) | 2024.01.07 |
[BOJ_11404] ํ๋ก์ด๋ (๊ณจ๋ 4) - JAVA (0) | 2023.12.23 |