-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathClassAVLTreeNode.h
More file actions
39 lines (33 loc) · 842 Bytes
/
Copy pathClassAVLTreeNode.h
File metadata and controls
39 lines (33 loc) · 842 Bytes
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
#ifndef AVLTREENODE_H
#define AVLTREENODE_H
#include <iostream>
#include "ClassRecord.h"
using namespace std;
class AVLTreeNode
{
private:
Record* recordPtr;
AVLTreeNode* rightNode;
AVLTreeNode* leftNode;
int height;
public:
AVLTreeNode(Record*);
~AVLTreeNode();
AVLTreeNode* getRightNode();
AVLTreeNode* getLeftNode();
Record* getRecordPtr();
int getHeight();
void setRightNode(AVLTreeNode*);
void setLeftNode(AVLTreeNode*);
AVLTreeNode* insert(Record*);
int getBalance(AVLTreeNode*);
AVLTreeNode* rightRotate();
AVLTreeNode* leftRotate();
void setHeight(int);
void inOrder();
//Query Functions
void getCertainOccurences(Date*, Date*, int&);
void getCertainOccurencesCountry(Date*, Date*, string*, int&);
void getCurNumOfPatients(int&);
};
#endif