好像和冒泡有关, 面对这些乱七八糟的 数字字母公式, 请问我应该买什么书回来学习
好像和冒泡有关, 面对这些乱七八糟的 数字字母公式, 请问我应该买什么书回来学习
1
fuermosi777 Jul 29, 2017
算法 4
|
2
lydasia Jul 29, 2017 via iPhone
算法复杂度
|
3
weyou Jul 29, 2017 via Android
买高中数学书就可以了
|
4
xupefei Jul 29, 2017 指的是如果输入数据的量是 n,这个算法需要进行 n 平方次的运算。注意这里指的不是算法的运行时间。
这叫 Big O notation。 |
6
crab Jul 29, 2017
|
7
MCVector Jul 29, 2017 via Android
可以理解为计算时间是问题规模的函数。这个函数是个多项式,而且最高次幂是 2。
|
8
Andiry Jul 29, 2017
用小学生的语言来讲:
排序一个十个数的数组,可能要做一百次运算; 排序一个一百个数的数组,可能要做一万次运算; 依此类推 |
9
starvedcat Jul 29, 2017 不需要买书,上网看文章就行
搜索“时间复杂度” |
10
skadi Jul 29, 2017
O 渐近时间复杂度.
就是说这个算法的时间复杂度是输入 N 的平方. po 大概需要一本算法导论进阶. |
11
zander Jul 29, 2017 via Android
抽象概念,复杂度。
|
12
kindjeff Jul 29, 2017
只上过小学太困难了吧,至少还得看初中和高中数学呀
|
13
ipwx Jul 29, 2017
严格的大 O 定义要用极限语言,有微积分基础才行。
所以楼主别追求严格定义了,形象理解一下就行。就是这个算法消耗的时间和你的数据量成平方相关,系数不确定。但是常数系数一般在算法复杂度分析里面忽略。 复杂度分析理论的优势是,不需要跑一下程序,就可以估计算法之间的优劣。 |
14
lzjamao Jul 29, 2017
x 与 y 的关系趋势。
|
15
lzjamao Jul 29, 2017
@lzjamao
1.线性关系。如 x 增加 1,y 增加 1,y = x + 1。放大 2 倍,y 也放大 2 倍。y = x * 2 2.非线性关系。如 x 增加 1,x^2 + y ^ 2 = 1 ( x 的 2 的平方根),x 为正数或负数减时。y 都有两种结果 |
16
zyqf Jul 29, 2017 via Android
通俗理解即:是衡量算法快慢的一个指标
所有算法都能得出这个时间复杂度,解决相同问题的不同算法的优劣,一般是根据时间复杂度衡量。 |
18
ic2y Jul 29, 2017
买本《数据结构与算法》研究研究吧,先 不要买《算法导论》 《算法分析》 这种巨难的书
|
19
ovear Jul 29, 2017
LS 说的好复杂。。
语句频度中,最高的数量级。。 语句频度:一条语句执行的次数 for(int i = 0; i<n; i++){ do(); //语句频度 n } for(int i = 0; i<n; i++){ sout("a");//语句频度 n for(int j = 0; j<n; j++){ do();//语句频度 n^2 } } 语句频度之和 n^2 + n 算法复杂度 O(n^2) |