Pergunta de entrevista da empresa Meta

Write a function that finds the square root of a decimal number.

Respostas da entrevista

Sigiloso

17 de set. de 2012

For the above, I would set my high to be the max(x, 1), Let say's one call any of your functions with 1/4, or with any 0 epsilon) && (epsilon 100) return; return guess; })

2

Sigiloso

2 de set. de 2012

A binary search with a constraint for precision. We should also take care of the interval (0.00, 1.00).

1

Sigiloso

7 de set. de 2012

// recursive with closure use (function(n){ var lo=0; var hi=n; var tries=500; var prev; function rec(){ var curr=hi-((hi-lo)/2); var prd=curr*curr; if(prd===n || prev==curr || !tries--){ return curr; } prd>n ? hi=curr : lo=curr; prev=curr; return rec() } var result = rec(); console.log(result, result*result, 500-tries) })(25)

Sigiloso

7 de set. de 2012

// iterative (function(n){ var lo=0; var hi=n; var tries=500; var prev; while(tries--){ var curr=hi-((hi-lo)/2); var prd=curr*curr; if(prd===n || prev==curr){ break; } prd>n ? hi=curr : lo=curr; prev=curr; } console.log(curr, curr*curr, 500-tries) })(64)