26 #ifndef OPENF4_AVL_MONOMIAL_H
27 #define OPENF4_AVL_MONOMIAL_H
34 #include <unordered_set>
114 void setLT(
int numMon);
127 int insert(
int numMon,
bool lt);
161 template <
typename dataType>
166 #include "../src/avl-monomial.inl"
169 #endif // OPENF4_AVL_MONOMIAL_H
DynamicArray< NodeAvlMonomial > _array
int insert(int numMon, bool lt)
If numMon is already in the AVL, update its lt flag, otherwise insert a new node. ...
NodeAvlMonomial * findNextBiggest(NodeAvlMonomial *node)
Find the next biggest NodeAvlMonomial after node.
Represent an avl of pair (number of a monomial, is leading monomial).
Declaration of class DynamicArray.
void printNode(NodeAvlPolynomial *p, int indent=0)
Print the AVL of root p.
void printAvlMonomial(std::ostream &stream) const
Print the AVL.
Wrapper for config.h in order to avoid multiple definitions.
Represent a dynamic array whose the width is fixed, the memory is allocated by blocs.
void setLT(int numMon)
Add numMon to the unordered set _lt.
NodeAvlMonomial()
Constructor.
Represent a node of the AVL of monomials.
unordered_set< int > _umon
NodeAvlMonomial * _parent
size_t size() const
Get the number of element in the AVL.
void reset()
Reset the AVL for a new usage, memory is not clear.
AvlMonomial()
Constructor.
NodeAvlMonomial * findBiggest()
Find the biggest NodeAvlMonomial of the AVL.
std::ostream & operator<<(std::ostream &stream, Term< Element > const &term)
Overload the operator <<.