나는 이진 트리를 검색 테이블로 정의한다. 트리는 연결된리스트 바이너리 트리이며 노드는 다음과 같다.리눅스에서 이진 검색 트리에 대한 복수 검색 키 C
typedef struct node{
int key;
char *buf;
...
}node_t;
typedef table_t node_t *; 그것은 데이터베이스처럼, 참으로
search_by_key1(table_t table, node_t node, int key1)
search_by_key2(table_t table, node_t node, int key2)
: 은 그래서
typedef struct node{
int key1;
int key2;
char *buf;
...
}node_t;
처럼
insert(table_t table, node_t node)
search(table_t table, node_t node)
지금은 여러 개의 키가
같은 기능을 가지고 있고 같은 기능을 갖고 싶어 항목에 대한 키를 검색 할 수 있습니다.소스 코드 예제가 있습니까? 나는 리눅스 C 감사를 사용하고 있습니다!
여러 개의 키가 있지만 여러 개의 트리가 필요하지 않습니까? 다른 키는 어느 노드가 왼쪽에 있고 어떤 노드가 오른쪽에 있는지를 결정합니다. – ugoren
예, 두 개의 키가있는 경우 두 개의 트리를 만들어야 할 수도 있습니다. 해결 방법이 있습니까? – misteryes