My Project
Main Page
Modules
Data Structures
Files
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Modules
rbtree_minmax.c
Go to the documentation of this file.
1
#include <
3ds/util/rbtree.h
>
2
#include "
rbtree_internal.h
"
3
4
static
inline
rbtree_node_t
*
5
do_minmax(
const
rbtree_t
*tree,
6
int
max)
7
{
8
rbtree_node_t
*
node
= tree->
root
;
9
10
if
(node == NULL)
11
return
NULL;
12
13
while
(node->
child
[max] != NULL)
14
node = node->
child
[max];
15
16
return
node
;
17
}
18
19
rbtree_node_t
*
20
rbtree_min
(
const
rbtree_t
*tree)
21
{
22
rbtree_node_t
*
node
;
23
24
node = do_minmax(tree,
LEFT
);
25
26
return
node
;
27
}
28
29
rbtree_node_t
*
30
rbtree_max
(
const
rbtree_t
*tree)
31
{
32
rbtree_node_t
*
node
;
33
34
node = do_minmax(tree,
RIGHT
);
35
36
return
node
;
37
}
node
rbtree_node_t * node
Definition:
rbtree.h:45
RIGHT
#define RIGHT
Definition:
rbtree_internal.h:4
rbtree_max
rbtree_node_t * rbtree_max(const rbtree_t *tree)
Definition:
rbtree_minmax.c:30
rbtree_internal.h
rbtree.h
rbtree_node
Definition:
rbtree.h:15
rbtree_min
rbtree_node_t * rbtree_min(const rbtree_t *tree)
Definition:
rbtree_minmax.c:20
rbtree
Definition:
rbtree.h:21
LEFT
#define LEFT
Definition:
rbtree_internal.h:3
rbtree::root
rbtree_node_t * root
Definition:
rbtree.h:23
rbtree_node::child
rbtree_node_t * child[2]
Definition:
rbtree.h:18
source
util
rbtree_minmax.c
Generated on Mon Nov 24 2014 23:37:59 for My Project by
1.8.8