-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtestsply.c
48 lines (39 loc) · 1022 Bytes
/
testsply.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include "splay.h"
#include <stdio.h>
#define NumItems 500
main( )
{
SplayTree T;
SplayTree P;
int i;
int j = 0;
T = Initialize( );
T = MakeEmpty( T );
for( i = 0; i < NumItems; i++, j = ( j + 7 ) % NumItems )
T = Insert( j, T );
for( j = 0; j < 2; j++ )
for( i = 0; i < NumItems; i++ )
{
T = Find( i, T );
if( Retrieve( T ) != i )
printf( "Error1 at %d\n", i );
}
printf( "Entering remove\n" );
for( i = 0; i < NumItems; i += 2 )
T = Remove( i, T );
for( i = 1; i < NumItems; i += 2 )
{
T = Find( i, T );
if( Retrieve( T ) != i )
printf( "Error2 at %d\n", i );
}
for( i = 0; i < NumItems; i += 2 )
{
T = Find( i, T );
if( Retrieve( T ) == i )
printf( "Error3 at %d\n", i );
}
printf( "Min is %d\n", Retrieve( T = FindMin( T ) ) );
printf( "Max is %d\n", Retrieve( T = FindMax( T ) ) );
return 0;
}