figure algorithmic run time expansion figure shows some of the run times to demonstrate how important it is to choose an efficient algorithm for the sanity of our graph we have omitted cubic ( )and exponential ( run times cubic and exponential algorithms should only ever be used for very small problems (if ever!)avoid them if feasibly possible the following list explains some of the most common big oh notationso( constantthe operation doesn' depend on the size of its inpute adding node to the tail of linked list where we always maintain pointer to the tail node (nlinearthe run time complexity is proportionate to the size of (log nlogarithmicnormally associated with algorithms that break the problem into smaller chunks per each invocatione searching binary search tree ( log njust log nusually associated with an algorithm that breaks the problem into smaller chunks per each invocationand then takes the results of these smaller chunks and stitches them back togethere quick sort ( quadratice bubble sort ( cubicvery rare ( exponentialincredibly rare if you encounter either of the latter two items (cubic and exponentialthis is really signal for you to review the design of your algorithm while prototyping algorithm designs you may just have the intention of solving the problem irrespective of how fast it works we would strongly advise that you always review your algorithm design and optimise where possible--particularly loops