cm0002@lemmy.world to Programmer Humor@programming.dev · 4 months agotimeoutSortlemmy.mlimagemessage-square36fedilinkarrow-up1442arrow-down14cross-posted to: programmerhumor@lemmy.ml
arrow-up1438arrow-down1imagetimeoutSortlemmy.mlcm0002@lemmy.world to Programmer Humor@programming.dev · 4 months agomessage-square36fedilinkcross-posted to: programmerhumor@lemmy.ml
minus-squarelugal@lemmy.dbzer0.comlinkfedilinkarrow-up12·4 months agoWould this lead to problems if there are multiple identical and close by values? Like for example you have 100 elements each between 1 and 5
minus-squarerbn@sopuli.xyzlinkfedilinkarrow-up33·4 months agoTo reduce the chance of errors, you can multiply all numbers by a factor of 10, 100, 1000, 10000, … for the timeout. The higher the factor, the lower the chances of an incorrect result. And as no one asked about performance…
minus-squareBlueKey@fedia.iolinkfedilinkarrow-up2·4 months agoMaybe not peak performance but heigh CPU efficency, it’s load ist mostly 0.
minus-squarefilcuk@lemmy.ziplinkfedilinkarrow-up33·4 months agoAs added benefit, you can then opyimise the code by dividing the number by 2, making it twice as fast. Think of the savings!
minus-squarelugal@lemmy.dbzer0.comlinkfedilinkarrow-up5·4 months agoBetter yet: take the square root and you get a sub-linear run time
Would this lead to problems if there are multiple identical and close by values? Like for example you have 100 elements each between 1 and 5
Yes.
To reduce the chance of errors, you can multiply all numbers by a factor of 10, 100, 1000, 10000, … for the timeout. The higher the factor, the lower the chances of an incorrect result. And as no one asked about performance…
Maybe not peak performance but heigh CPU efficency, it’s load ist mostly 0.
As added benefit, you can then opyimise the code by dividing the number by 2, making it twice as fast. Think of the savings!
Better yet: take the square root and you get a sub-linear run time