Tempo de execução / complexidade de tempo para o loop while com raiz quadrada

Essa pergunta parece relativamente simples, mas não consigo encontrar o tempo de execução em termos de n.

Aqui está o problema:

j = n;
while(j >= 2) {
    j = j^(1/2)
}

Eu realmente não preciso do tempo total de execução, só preciso saber como calcular a quantidade de vezes que a segunda e a terceira linhas são atingidas (elas devem ser as mesmas). Gostaria de saber se também existe algum tipo de fórmula para encontrar isso. Eu posso ver que o acima é equivalente a:

for(j = n; n >= 2; j = j^(1/2)

Observe que o tipo de operação não importa, cada vez que uma linha é executada, conta como 1 unidade de tempo. Portanto, a linha 1 seria apenas uma unidade de tempo, a linha 2 seria:

0 unidades de tempo se n fosse 1,1 unidade de tempo se n fosse 2,2 unidades de tempo se n fossem 4,3 unidades de tempo, se n forem 16, etc.

Agradecemos antecipadamente a quem oferecer ajuda! É muito apreciado!

questionAnswers(1)

yourAnswerToTheQuestion