음.. 좀 고민을 했다. 한개씩 노드를 돌면서 순회는 해야겠는데 어떻게하면 간단해질까 싶었는데..
우선, 문제를 작게 분할해서 보면 인접한 두 노드의 관계가 변하는것이다. 1개의 노드를 기준으로 보면 next 값과 prev 값이
변하는 것.
예를들면,
Node#1 Node#2
-value : 1 -value : 2
-prev : null -prev : Node#1
-next : Node#2 -next : null
여기서, 각 노드의 prev와 next값을 교환해주면,
거꾸로 뒤집은 모양새가 나온다.
우선, 문제를 작게 분할해서 보면 인접한 두 노드의 관계가 변하는것이다. 1개의 노드를 기준으로 보면 next 값과 prev 값이
변하는 것.
예를들면,
Node#1 Node#2
-value : 1 -value : 2
-prev : null -prev : Node#1
-next : Node#2 -next : null
여기서, 각 노드의 prev와 next값을 교환해주면,
거꾸로 뒤집은 모양새가 나온다.
1 | using System; |
