파일기반 B+ tree 삽입과 검색
- 최초 등록일
- 2005.01.17
- 최종 저작일
- 2005.01
- 24페이지/ 압축파일
- 가격 1,500원
소개글
B+ tree를 파일입출력으로 구현했습니다.
C언어로 구현했습니다.
생각보다 쉽지 않았던 레포트였네요~
컴파일 실행환경
C파일
VC++에서 컴파일
dos창에서 실행
본문내용
파일의 구조
// | | | | | |
// ---------------------------------------------------------------------------------
// head(root) type 노드 type 노드
//////////////////////////////////////////////////////////////////////////////////////
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include <fcntl.h>
#include <io.h>
#define MAX 100 //스택에 쌓을수 있는 data 수를 최대 100까지
#define MAX_p 3 //한노드가 최대 가질수 있는 자식노드수
#ifndef SEEK_SET
#define SEEK_SET 0 //파일을 읽고쓰기위해.. 파일의 가장 처음부분
#endif
typedef struct //리프노드에 들어갈 key와 id 값을 저장하는 구조체
{
int key;
int id;
}Entry;
typedef struct //leaf노드를 저장할 구조체
{
Entry en[MAX_p]; //하나의 여유공간을 두었다.
//그 이유는 노드에 entry가 들어있는
갯수가 MAX_p-1개가 되면
//꽉차게되는데 그때 꽉찬곳에 새로운 entry가 들어오면
//여유공간에 새로들어온 entry를 저장하고 나누기 위해서
//하나의 여유공간을 두었다.
int link; //다음 leaf노드를 가르키기 위해서 필요한 변수
int cnt; //몇개의 entry가 노드에 삽입되어있는지 검사하기 위한 변수
}Leaf_node;
압축파일 내 파일목록
bplustree.c
bplustree.hwp
insert.txt
insert1.txt
search.txt
search1.txt
참고 자료
없음