, если вы заботитесь о заказе, используйте очередь. Очередь сохраняет порядок вставки. или вы можете использовать реализацию списка, скажем, два списка массивов, чтобы чередовать. Но, по сути, список также сохраняет порядок.
если вы не заботитесь о порядке, вы можете использовать любые реализации набора. наборы не сохраняют этот порядок.
Например, в реализации BFS, если вы не заботитесь о порядке узлов, вы можете использовать два набора: старый и новый для чередования, а не очередь.