Так что я смотрел на этот код из учебника:Число итераций в вложенных циклах?
for (int i=0; i<N; i++)
for(int j=i+1; j<N; j++)
Автор заявил, что внутренние для цикла итерацию для точности N * (N-1)/2 раза, но не дает никаких оснований для того, как он прибыл к такому уравнению. Я понимаю N * (N-1), но зачем делиться на 2? Я сам запустил код и достаточно уверен, когда N равно 10, внутренний цикл повторяется 45 раз (10 * 9/2).
возился с кодом себя и попробовал следующее (назначается только я -j):
for (int i=0; i<N; i++)
for(int j=i; j<N; j++)
С N = 10, это приводит к 55. Так что у меня возникают проблемы с пониманием основной математики Вот. Конечно, я мог бы просто подключить все ценности и наложить свой путь через проблему, но я чувствую, что есть что-то существенное и очень простое, что мне не хватает. Как бы вы придумали уравнение для описания цикла for, который я только что построил? Есть ли способ сделать это, не полагаясь на выходы? Поблагодарите за помощь!
http://en.wikipedia.org/wiki/Arithmetic_series –
Обратите внимание, что во внутреннем цикле у вас есть 'n' во внешнем цикле и' N'. Это опечатка? Потому что ответ другой, если это не опечатка. – IVlad
извините, да, это должно быть столица N – Sam