Consider the algorithm (from another question):
set start vertex to visited
load it into queue
while queue not empty
for each edge incident to vertex
if its not visited
load into queue
mark vertex
The complexity of the algorithm is defined as the upper bound of times the inner loop can run, right? Well, considering a complete graph. For each one of its N vertexes, we run the check if its not visited
N-1
times. So, that's N * (N-1)
tests, which is quadratic. What is wrong with this view?