Http://open.163.com/special/opencourse/algorithms.html
Personal understanding
Progressive analysis is to ignore Machine-dependent constants and, instead of the actual running time
Look at the growth of the running time
(The following = Table approximation, a = B = C, A is not directly associated with C)
Algorithmic complexity = time complexity = number of program executions
= is expressed as a function, preserving the highest exponent, representing the number of executions required by the algorithm. The constant term K, which is understood as an external fixation factor, is linearly related. (such as computer performance)
(Time complexity mainly considers the use of memory, maybe will ignore the number of CPU executions)
Performance adjectives, quantifiers, the most evaluated benchmark, are located at the bottom of the consideration.
Weighted average
Tc (time of each input run) * TP (probability of occurrence)
Insertion sort, time complexity n^2
Arithmetic progression
Continuous integer summation (linear sum)
Theta Notation (n^2)
Merge sort, time complexity nlgn
2 fork Tree and return, length NLG, Width n (n number of iteration)
The last layer of the tree, not necessarily full, may is another constant
Introduction to NetEase public class _ algorithm _ Note a