BFS versus DFS for fixed-level targets in ordered trees

Abstract

We find the average time complexity of the breadth-first search (BFS) and the depth-first search (DFS) algorithms, when one searches for a target node selected uniformly at random among all nodes at level in the set of ordered trees with n edges. Intuition suggests that on average BFS must be asymptotically faster than DFS if and only if , as a function of n, is below a certain threshold. We confirm this intuition by showing that there exists a unique constant λ≈ 0.789004, such that in expectation BFS is asymptotically faster than DFS if and only if ≤ λn. This gives us a practical rule to select between the two algorithms, even when we do not know the exact value of , but only an estimate of it. Furthermore, we find the asymptotic average time complexity of BFS in the given setting for an arbitrary class of Galton--Watson trees, which includes ordered trees, binary trees, and other popular classes. We use results on the occupation measure of Brownian excursions, as well as combinatorial identities related to lattice paths. Finally, we consider the simple truncated DFS algorithm, which can be shown easily to be asymptotically faster than both BFS and DFS when is known in advance. We show that in fact its asymptotic time complexity is 1/2 of the asymptotic complexity of BFS, when = sn for any constant s. Several further questions are also raised.

0

Turn this paper into a full lesson

ArcXiv compiles a staged curriculum from this paper: 8-12 lessons across beginner → advanced, synthesised section guides, visuals, flashcards, a quiz, exercises, and on-demand deep dives per section. Grounded in the abstract, never invented.

Discussion (0)

Sign in to join the discussion.

Loading comments…