summaryrefslogtreecommitdiff
path: root/sem_4/Algo/TP7/ArbreBinaireRecherche.h
blob: 56b0e439879d6401da546c7988d88803a557d71d (plain)
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
49
50
51
52
53
54
55
56
57
#ifndef ARBREBINAIRERECHERCHE_H
#define ARBREBINAIRERECHERCHE_H

#include <iostream>
#include <sstream>


#include <cstdlib>
#include <fstream>


using namespace std;


typedef int Valeur;

class SommetABR;

typedef SommetABR* ABR;

class SommetABR  {
  public:
  Valeur racine;
  ABR Pere,SAG, SAD;
  bool FGP;

  void GrefferSAG(ABR g);
  void GrefferSAD(ABR d);

  SommetABR(Valeur v);
  SommetABR(SommetABR& s);


  void SupprimerSAG();
  void SupprimerSAD();

  bool FeuilleP();

  void RemplacerPourLePerePar(ABR);

    std::string* TikzRecursABR(int ligne,int gauche, int droite, int numeroPere, int typeFils, ABR Ar);

// ABR

  ABR PlusPetit();
  ABR RechercherValeur(Valeur v);
  void InsererValeur(Valeur v);
  ABR SupprimerValeur(Valeur v); // notez la dissym�trie
  ABR SupMin();
};


 //void SortieLatex(ABR, std::string filepath);



#endif