4
이 질문을 통해 인접 목록 표현에서 그래프의 각 노드의 속도를 계산해야했습니다.근접도 목록에서 그래프 속도 계산
for each u
for each Adj[i] where i!=u
if (i,u) ∈ E
in-degree[u]+=1
지금 날에 따라 그 시간 복잡도는 O(|V||E|+|V|^2)
되어야하지만 언급 용액 대신 O(|V||E|)
는 동일하게 기재.
어떤 것이 맞는지 말해주세요.
나는 분명하지 않다. 두 번째 부분의 외부 루프는 | V | 시간과 우리는 그것을 바로 피할 수 없어? 나는 그때 어떻게 O. VE | O | E |가된다. ? – vijayashankard
예 외부 루프는 | V | 시간이지만 내부 루프의 실행은 해당 정점에 인접한 모서리의 수에 의존합니다. | E |보다 작습니다. (완전한 그래프 경우 제외). 이것을 시각화하려면, 모든 가장자리를 바라 보는 것 같이 동경을 찾는 것을 생각하십시오. 그래서 복잡도는 비례 적이 지요. 그래프의 모서리 수는 O (| E |)입니다. – smasher
안녕하세요, O (| E |)가되어야한다고 생각합니다. 하지만 말했듯이 바깥 쪽 루프는 | V |를 실행합니다. 타임스. 따라서 복잡도 계산을 수행하는 동안 아무 일도 일어나지 않는 루프를 고려하지 않습니까? 'for i in (0, n) : do nothing'처럼 복잡성은'n' 또는'1'입니까? – Anshul