프로그래밍<트리 구조 구현>
글쓴이: minsu9101 / 작성시간: 목, 2009/12/10 - 8:35오후
제가 이번에 트리구조를 구현 하려고 합니다.
프로젝트의 내용은 대략 이러합니다.↓
1번 방이 있다.
1번 방에는 10대의 PC가 있다.
각 PC는 주 사용자 3명이 존재한다.
이러한 내용에서
_________________________________________1번방__________________________________________
_____________________↙________↙____________↓_____________↘______________↘
____________________PC1________PC2__________PC3__________PC4____________PC5__.........
________________↙__↓__↘
_________사용자1_사용자2_사용자3__... ... ... ... ... ... ... ... ... ... ... ...
이러한 형식으로 트리의 구조가 만들어지게 되는데
만약 C언어로 트리구조를 구현하려면 부모노드에서 자식 노드를 연결할 때 어떻게 연결해야 하는지 궁금합니다.
그리고, 이건 제가 C언어로 대충 짜본 소스인데 이게 트리라고 할 수 있는 건가요????
#include <stdio.h> #include <stdlib.h> main() { //printf("test"); int a = 10, *al, *ar;//*al과 *ar은 왼쪽 노드와 오른쪽 노드를 연결하기 위하여 만든 포인터형 변수 int b = 2; int c = 4; int i; al = &b; ar = &c; printf("현재 부모노드는 10 입니다.\n"); printf("왼쪽 노드로 가시려면 '1'을 오른쪽 노드로 가시려면 '2'를 입력해 주세요.\n"); scanf("%d", &i); if(i == 1) { printf("왼쪽 노드에는 : %d\n",*al);//왼쪽 노드 출력 } else if(i == 2)//오른쪽 노드 출력 { printf("오른쪽 노드에는 : %d\n",*ar); } printf("tree\n"); printf("________________ %d _______________\n", a); printf("______ %d _______________ %d ______\n", b, c);// 트리 구조를 표현하기 위하여.... return 0; }
Forums:
깊이가 2인 간단한
깊이가 2인 간단한 트리라고 할수있습니다.
그런데 깊이가 3이상이 된다면 지금 하신것으로는 안되겠죠?
구조체를 이용하여 구현해보세요 검색만하시면 많은 도움 받으실거에요
흘러가고있는 지금 이 시간에 충실하자.
감사합니다
감사합니다 ^^
STL map 템플릿 한번 알아보세요
다양한 트리를 간단하게 사용하실 수 있습니다.
물론 트리를 사용하는게 아니라 제작해보는게 중요하다면 직접 구현해야겠지만 사용만 할 줄 알아도 된다면 STL 강추합니다.
약간 망설여지는
약간 망설여지는 태클입니다만...
곱셈 공부하는 사람한테 공학용 계산기 추천하는 수준인것 같습니다.
이런 테클 상관없습니다
망설이지 않으셔도 되구요.
님 말씀처럼 제가 질문자의 글도 정확히 안 읽고 제 위주로 답글을 달아놓은 것 같습니다. 이곳에서 맨날 질문 위주로 활동해와서 한마디라도 도움이 될까 했었습니다. 혹 질문하셨던 분이 STL이 무언가 몰랐는데 제 글을 읽고 그 존재를 알게 된다면 좋지 않을까 생각하면서요 ^^;
네 ㅋㅋ
어쨌든 감사합니다 ~~
댓글 달기