Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
tpl_cartesian_tree_test.cc File Reference

Unit tests for Gen_Cartesian_Tree, Gen_Euler_Tour_LCA, and Gen_Cartesian_Tree_RMQ. More...

#include <gtest/gtest.h>
#include <tpl_cartesian_tree.H>
#include <tpl_sparse_table.H>
#include <algorithm>
#include <cstddef>
#include <numeric>
#include <random>
#include <vector>
Include dependency graph for tpl_cartesian_tree_test.cc:

Go to the source code of this file.

Functions

 TEST (GenCartesianTree, Empty)
 
 TEST (GenCartesianTree, SingleElement)
 
 TEST (GenCartesianTree, TwoElements)
 
 TEST (GenCartesianTree, HeapProperty)
 
 TEST (GenCartesianTree, InorderProperty)
 
 TEST (GenCartesianTree, ManualSmall)
 
 TEST (GenCartesianTree, DuplicateValues)
 
 TEST (GenCartesianTree, Sorted)
 
 TEST (GenCartesianTree, ReverseSorted)
 
 TEST (GenCartesianTree, AllEqual)
 
 TEST (GenCartesianTree, CustomComparatorMax)
 
 TEST (GenCartesianTree, FromArray)
 
 TEST (GenCartesianTree, FromVector)
 
 TEST (GenCartesianTree, FromInitList)
 
 TEST (GenCartesianTree, FromDynList)
 
 TEST (GenCartesianTree, Height)
 
 TEST (GenCartesianTree, CopyMoveSwap)
 
 TEST (GenCartesianTree, BoundsChecking)
 
 TEST (GenCartesianTree, StressRandom)
 
 TEST (EulerTourLCA, Empty)
 
 TEST (EulerTourLCA, SingleElement)
 
 TEST (EulerTourLCA, EulerTourSize)
 
 TEST (EulerTourLCA, LcaSelf)
 
 TEST (EulerTourLCA, LcaRootChildren)
 
 TEST (EulerTourLCA, ManualSmall)
 
 TEST (EulerTourLCA, DepthOf)
 
 TEST (EulerTourLCA, Distance)
 
 TEST (EulerTourLCA, LcaSymmetry)
 
 TEST (EulerTourLCA, LcaBoundsCheck)
 
 TEST (EulerTourLCA, StressVsBruteForce)
 
 TEST (CartesianTreeRMQ, Empty)
 
 TEST (CartesianTreeRMQ, SingleElement)
 
 TEST (CartesianTreeRMQ, QueryEntireRange)
 
 TEST (CartesianTreeRMQ, QuerySingleElement)
 
 TEST (CartesianTreeRMQ, QueryVsSparseTable)
 
 TEST (CartesianTreeRMQ, QueryIdx)
 
 TEST (CartesianTreeRMQ, MaxVariant)
 
 TEST (CartesianTreeRMQ, StressRandomVsBruteForce)
 
 TEST (CartesianTreeRMQ, BoundsCheck)
 

Detailed Description

Unit tests for Gen_Cartesian_Tree, Gen_Euler_Tour_LCA, and Gen_Cartesian_Tree_RMQ.

Definition in file tpl_cartesian_tree_test.cc.

Function Documentation

◆ TEST() [1/39]

TEST ( CartesianTreeRMQ  ,
BoundsCheck   
)

◆ TEST() [2/39]

TEST ( CartesianTreeRMQ  ,
Empty   
)

◆ TEST() [3/39]

TEST ( CartesianTreeRMQ  ,
MaxVariant   
)

◆ TEST() [4/39]

TEST ( CartesianTreeRMQ  ,
QueryEntireRange   
)

◆ TEST() [5/39]

TEST ( CartesianTreeRMQ  ,
QueryIdx   
)

◆ TEST() [6/39]

TEST ( CartesianTreeRMQ  ,
QuerySingleElement   
)

◆ TEST() [7/39]

TEST ( CartesianTreeRMQ  ,
QueryVsSparseTable   
)

◆ TEST() [8/39]

TEST ( CartesianTreeRMQ  ,
SingleElement   
)

◆ TEST() [9/39]

TEST ( CartesianTreeRMQ  ,
StressRandomVsBruteForce   
)

Definition at line 565 of file tpl_cartesian_tree_test.cc.

References brute_min(), Aleph::divide_and_conquer_partition_dp(), l, N, r, and rng.

◆ TEST() [10/39]

TEST ( EulerTourLCA  ,
DepthOf   
)

◆ TEST() [11/39]

◆ TEST() [12/39]

◆ TEST() [13/39]

TEST ( EulerTourLCA  ,
EulerTourSize   
)

◆ TEST() [14/39]

◆ TEST() [15/39]

◆ TEST() [16/39]

◆ TEST() [17/39]

◆ TEST() [18/39]

TEST ( EulerTourLCA  ,
ManualSmall   
)

◆ TEST() [19/39]

◆ TEST() [20/39]

TEST ( EulerTourLCA  ,
StressVsBruteForce   
)

◆ TEST() [21/39]

TEST ( GenCartesianTree  ,
AllEqual   
)

◆ TEST() [22/39]

TEST ( GenCartesianTree  ,
BoundsChecking   
)

◆ TEST() [23/39]

TEST ( GenCartesianTree  ,
CopyMoveSwap   
)

◆ TEST() [24/39]

TEST ( GenCartesianTree  ,
CustomComparatorMax   
)

◆ TEST() [25/39]

TEST ( GenCartesianTree  ,
DuplicateValues   
)

◆ TEST() [26/39]

TEST ( GenCartesianTree  ,
Empty   
)

◆ TEST() [27/39]

TEST ( GenCartesianTree  ,
FromArray   
)

◆ TEST() [28/39]

TEST ( GenCartesianTree  ,
FromDynList   
)

◆ TEST() [29/39]

TEST ( GenCartesianTree  ,
FromInitList   
)

◆ TEST() [30/39]

TEST ( GenCartesianTree  ,
FromVector   
)

◆ TEST() [31/39]

TEST ( GenCartesianTree  ,
HeapProperty   
)

◆ TEST() [32/39]

TEST ( GenCartesianTree  ,
Height   
)

◆ TEST() [33/39]

TEST ( GenCartesianTree  ,
InorderProperty   
)

◆ TEST() [34/39]

TEST ( GenCartesianTree  ,
ManualSmall   
)

◆ TEST() [35/39]

TEST ( GenCartesianTree  ,
ReverseSorted   
)

◆ TEST() [36/39]

TEST ( GenCartesianTree  ,
SingleElement   
)

◆ TEST() [37/39]

TEST ( GenCartesianTree  ,
Sorted   
)

◆ TEST() [38/39]

TEST ( GenCartesianTree  ,
StressRandom   
)

Definition at line 330 of file tpl_cartesian_tree_test.cc.

References Aleph::divide_and_conquer_partition_dp(), N, and rng.

◆ TEST() [39/39]

TEST ( GenCartesianTree  ,
TwoElements   
)