user1180005
user1180005

Reputation: 23

Analysis of a tree generated by BFS

I thought about asking this question in the Mathexchange, but it is less about calculation and yes/no, but more about computer science related algorithm, so I am asking it here.

In BFS algorithm, it is possible to mark each level of traversal as layers. For example, if s is the starting vertice, vertices in any single layer should all have same distance to s. This is the one of the most basic characteristic of BFS search algorithm.

Assume that there are i layers, and a tree generated by BFS algorithm to be called T, and the graph to be called G. This means that the maximum distance between any 2 nodes in T would be i. (probably one from the starting layer, and one from the bottom layer)

Using that property, how can I prove that there exists a vertex a in G such that its degree would be at most 6*|V|/i ?

I thought since any vertex u in Layer L_j have edges connected to the vertices in layer L_j-1 and L_j+1, showing the existence of 3 consequent layers with total of at most 6|V|/i vertices. would help.

But the thing is that I know the goal, but I do not know how to approach it.

Upvotes: 2

Views: 513

Answers (1)

jpalecek
jpalecek

Reputation: 47762

The approach should probably be: Take triplets of layers (eg. [1,2,3], [4,5,6]...). There are i/3 of them and they are disjoint. Together, they have V vertices, which means there must be a triplet with <= V/(i/3) of them (otherwise ... count it). However, this approach leads to at most 3V/i degree.

Maybe the i should be the diameter (I'll call it m as Maximum distance between two vertices. I'm confused by your statement

the maximum distance between any 2 nodes in T would be i.

which is not true - for some vertices you must go up then down). Then, m would be <= 2*i which leads to vertices with degree at most 6V/m.

Upvotes: 2

Related Questions