⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tree.c

📁 FinC is Fava in C! A C-like syntax language. It s designed to apply to embededd system.
💻 C
字号:
#include <tree.h>struct _TreeNode{	int balance;	TreeNode* left;	TreeNode* right;	ADT key;	ADT data;};Tree* tree_new(){	Tree* self;	self = (Tree*)mem_new(sizeof(Tree*));	self->root = NULL;	self->memchunk = FALSE;	object_init_object (OBJECT (self), tree_destroy);	return self;}Tree* tree_new_memchunk(){	Tree* self;	self = (Tree*)mem_new(sizeof(Tree*));	self->root = NULL;	self->memchunk = TRUE;	object_init_object (OBJECT (self), tree_destroy);	return self;}void tree_destory(Object* self){	tree_clear( (Tree*)self);	mem_destroy (((Tree*)self)->data);	mem_destroy (self);}void tree_insert(Tree* self, ADT p_key, ADT p_data){}void tree_remove(Tree* self, ADT p_key, ADT p_data){}void tree_is_empty(Tree* self){}void tree_clear(Tree* self){}ADT tree_lookup(Tree* self, ADT key){}ADT tree_search(Tree* self, ADT data){}void tree_foreach(Tree* self, UserFunc *p_func, ADT p_data){}int tree_height(Tree* self){}int tree_nodes (Tree* self){}static TreeNode* tree_node_insert(Tree* self, TreeNode* p_node, ADT key, ADT data, bool &insert){}static TreeNode* tree_node_balance(Tree* self, TreeNode* n){}static TreeNode* tree_node_remove(Tree* self, TreeNode* n, ADT key){}static TreeNode* tree_node_remove_leftmost(Tree* self, TreeNode* n, TreeNode** leftmost){}static void tree_node_clear(Tree* self, TreeNode* n){}static TreeNode* tree_node_restore_left_balance(Tree* self, TreeNode* n, int old_balance){}static TreeNode* tree_node_restore_right_balance(Tree* self, TreeNode* n, int old_balance){}static TreeNode* tree_node_lookup(Tree* self, TreeNode* n, ADT key){}static TreeNode* tree_node_search(Tree* self, TreeNode* n, ADT data){}static void tree_node_pre_order(Tree* self, TreeNode* n){}static void tree_node_in_order(Tree* self, TreeNode* n){}static void tree_node_post_order(Tree* self, TreeNode* n){}static int tree_node_count (Tree* self, TreeNode* n){}static int tree_node_height(Tree* self, TreeNode* n){}static TreeNode* tree_node_rotate_left (Tree* self, TreeNode* n){}static TreeNode* tree_node_rotate_right(Tree* self, TreeNode* n){}static void tree_node_check(Tree* self, TreeNode* n){}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -