PandA-2024.02
|
#include <assert.h>
#include <stdio.h>
#include <stdlib.h>
Go to the source code of this file.
Data Structures | |
struct | stack |
struct | bin_tree |
Macros | |
#define | MAX_NUMBER_OF_NODES 255 |
Typedefs | |
typedef struct stack | node_stack |
typedef struct bin_tree | node_tree |
Functions | |
void | __builtin_bambu_time_start () |
void | __builtin_bambu_time_stop () |
void | push_stack_free_list (node_stack **head, node_stack *new_node) |
node_stack * | pop_stack_free_list (node_stack **head) |
void | init_stack_free_list () |
void | push (node_stack **head, void *t) |
_Bool | isEmpty (node_stack *head) |
void * | pop (node_stack **head) |
void * | top (node_stack *head) |
void | push_tree_free_list (node_tree **head, node_tree *new_node) |
node_tree * | pop_tree_free_list (node_tree **head) |
void | init_tree_free_list () |
void | insert (node_tree **tree, int val) |
void | print_preorder (node_tree *root) |
void | print_inorder (node_tree *root) |
void | print_postorder (node_tree *root) |
void | deltree (node_tree *root) |
node_tree * | __attribute__ ((noinline)) |
int | main () |
Variables | |
static node_stack | StaticPoolStack [MAX_NUMBER_OF_NODES] |
static node_stack * | head_stack_free_list |
static node_tree | StaticPoolTree [MAX_NUMBER_OF_NODES] |
static node_tree * | head_tree_free_list |
#define MAX_NUMBER_OF_NODES 255 |
Definition at line 5 of file tree.c.
Referenced by init_stack_free_list(), and init_tree_free_list().
typedef struct stack node_stack |
node_tree* __attribute__ | ( | (noinline) | ) |
Definition at line 258 of file tree.c.
References bin_tree::data, bin_tree::left, NULL, and bin_tree::right.
void __builtin_bambu_time_start | ( | ) |
void __builtin_bambu_time_stop | ( | ) |
void deltree | ( | node_tree * | root | ) |
Definition at line 225 of file tree.c.
References isEmpty(), bin_tree::left, NULL, pop(), push(), push_tree_free_list(), bin_tree::right, and top().
void init_stack_free_list | ( | ) |
Definition at line 42 of file tree.c.
References index, MAX_NUMBER_OF_NODES, and push_stack_free_list().
void init_tree_free_list | ( | ) |
Definition at line 113 of file tree.c.
References index, MAX_NUMBER_OF_NODES, and push_tree_free_list().
void insert | ( | node_tree ** | tree, |
int | val | ||
) |
Definition at line 121 of file tree.c.
References bin_tree::data, insert(), bin_tree::left, NULL, pop_tree_free_list(), and bin_tree::right.
_Bool isEmpty | ( | node_stack * | head | ) |
int main | ( | void | ) |
Definition at line 269 of file tree.c.
References bin_tree::data, deltree(), init_stack_free_list(), init_tree_free_list(), insert(), NULL, print_inorder(), print_postorder(), and print_preorder().
void* pop | ( | node_stack ** | head | ) |
Definition at line 62 of file tree.c.
References stack::data, isEmpty(), stack::next, push_stack_free_list(), and top().
node_stack* pop_stack_free_list | ( | node_stack ** | head | ) |
Definition at line 28 of file tree.c.
References stack::next, and NULL.
Definition at line 99 of file tree.c.
References bin_tree::left, and NULL.
void print_inorder | ( | node_tree * | root | ) |
Definition at line 165 of file tree.c.
References bin_tree::data, isEmpty(), bin_tree::left, NULL, pop(), push(), and bin_tree::right.
void print_postorder | ( | node_tree * | root | ) |
Definition at line 192 of file tree.c.
References bin_tree::data, isEmpty(), bin_tree::left, NULL, pop(), push(), bin_tree::right, and top().
void print_preorder | ( | node_tree * | root | ) |
Definition at line 143 of file tree.c.
References bin_tree::data, isEmpty(), bin_tree::left, NULL, pop(), push(), and bin_tree::right.
void push | ( | node_stack ** | head, |
void * | t | ||
) |
Definition at line 50 of file tree.c.
References stack::data, stack::next, and pop_stack_free_list().
void push_stack_free_list | ( | node_stack ** | head, |
node_stack * | new_node | ||
) |
Definition at line 22 of file tree.c.
References stack::data, and stack::next.
Definition at line 92 of file tree.c.
References bin_tree::data, bin_tree::left, and bin_tree::right.
void* top | ( | node_stack * | head | ) |
Definition at line 75 of file tree.c.
References stack::data, bin_tree::left, and bin_tree::right.
|
static |
|
static |
|
static |