У меня возникла небольшая проблема с пониманием времени выполнения вложенных циклов for. Я получаю это:
for(int x=0; x<10; x++) // runs 10 times
for(int y=0; y<n; y++) // runs n times
for(int i=0; i<n; i++)
for(int j=0; j<n; j++) // runs n*n = n^2 times
Однако я запутываюсь, когда эти переменные связаны между собой. Например:
for(int i=0; i < N; i++) // runs n times
for(int j=i+1; j<N; j++) // runs n*n times but 1 time less every pass?
for(int k=j+1; k<N; k++) // ???
Можете ли вы указать мне правильное направление с простым объяснением того, как подойти к такой проблеме?