Algorithmic efficiency: Difference between revisions

Content deleted Content added
Citation bot (talk | contribs)
Add: s2cid. | You can use this bot yourself. Report bugs here. | Suggested by SemperIocundus | via #UCB_webform
Tag: Reverted
Line 44:
An algorithm is considered efficient if its resource consumption, also known as computational cost, is at or below some acceptable level. Roughly speaking, 'acceptable' means: it will run in a reasonable amount of time or space on an available computer, typically as a [[function (mathematics)|function]] of the size of the input. Since the 1950s computers have seen dramatic increases in both the available computational power and in the available amount of memory, so current acceptable levels would have been unacceptable even 10 years ago. In fact, thanks to the [[Moore's law|approximate doubling of computer power every 2 years]], tasks that are acceptably efficient on modern [[smartphone]]s and [[embedded system]]s may have been unacceptably inefficient for industrial [[server (computing)|server]]s 10 years ago.
 
Computer manufacturers frequently bring out new models, often with higher [[computer performance|performance]]. Software costs can be quite high, so in some cases the simplest and cheapest way of getting higher performance might be to just buy a faster computer, provided it is [[Backward compatibility|compatible]] with an existing computer HELP.
 
There are many ways in which the resources used by an algorithm can be measured: the two most common measures are speed and memory usage; other measures could include transmission speed, temporary disk usage, long-term disk usage, power consumption, [[total cost of ownership]], [[response time (technology)|response time]] to external stimuli, etc. Many of these measures depend on the size of the input to the algorithm, i.e. the amount of data to be processed. They might also depend on the way in which the data is arranged; for example, some [[sorting algorithm]]s perform poorly on data which is already sorted, or which is sorted in reverse order.