What The Alpha Needs

More than one of these is correct. Select every statement about DSU complexity that holds.

A

With both optimizations the amortized cost is O(alpha(n)), and alpha(n) stays at or below 4 for every n a real program will see (roughly up to 1060010^{600}).

B

Path compression alone already reaches the O(alpha(n)) amortized bound; union by rank only lowers the constant factor.

C

Union by size or by rank, with no path compression at all, still gives O(log n) per query.

D

Path compression on its own, with unions that always hang the second root under the first, gives O(log n) per call on average.

E

With both optimizations, every individual find_set call runs in O(alpha(n)) time.