I am reading Artificial Intelligence: Making Machines "Think" by Neill Graham. He gives an overview of graph search using either the breadth-first (BF) or depth-first (DF) search algorithms, and describes the role of of a queue in BF search vs a stack in DF search. It got me thinking hypothetically about an intermediate approach in which the usage of a data structure is, in a probabilistic fashion, treated as either a queue or a stack in a graph search. I'm imagining it would be like a bandit problem where switching between BF and DF would be a stochastic function of how much BF vs DF has been done.
What I've described is not fully specified as there may be different algorithms that implement this strategy. Even so, do such algorithms exist? Please give an example.