배열로 트리를...
우왕ㅋ굳ㅋ
해결법은 자신을 참조하는 포인터를 응용하시면 됩니다.
이런식이죠.
struct Node { Node *p1, *p2; };
struct Node a, b, c, d;
a.p1 = &b;
b.p2 = &c;
c.p2 = &d;
if( a.p1->p2->p2 == &d ); // 결과는 true
대충 말하자면 이런식이죠.;;
이용태 님이 쓰신 글 :
: 아래와 같은 트리구조를 만들려고 하는데요... 또는 높이가 틀린(차수가 틀린) 균형 트리나 한쪽으로 치우친 트리도 포함입니다.
:
: 맨 마지막 7, 8, 9, 10, 11, 12, 13, 14에 특정 데이터가 동적으로 매달리게 됩니다.
:
:
:
: root
: |
: -------------------------------------
: 1 2
: ----------------- ---------------
: 3 4 5 6
: ----------- ----------- ---------- ----------
: 7 8 9 10 11 12 13 14
:
: 이걸 배열로 선언해서 쓰고 있었는데... 심히 부작용이 너무 심합니다...ㅡㅡ;;;
:
: 먼가 획기적인 방법으로 개선을 해야 할거 같은데요... 트리에 관해선 잘 몰라서요..
:
: 위와 같은 구조의 트리를 만들려면 어떤것을 공부해야 하나요? 혹 트리 쉽게 만들어주는 라이브러리 같은게 있나요?
:
: 머리가 지끈지끈합니다...ㅠㅠ
|