20200728

编程入门 行业动态 更新时间:2024-10-09 10:26:58

20200728

20200728

20200728_数据结构C++语言版_读书笔记10_大omega

每日小知识

ls -h命令,人性化显示文件大小,默认是字节,加上-h可以变为kb或gb。

一、相关术语

  • big-omega notation
    大Ω,渐进下界。

二、相关内容

第1章,绪论。
1.2 复杂度度量

1.2.1 时间复杂度

1.2.2 渐进复杂度(一)

■大Ω记号

如果存在正的常数c和函数g(n),使得对于任何n>>2都有
T(n) ≥ c*g(n)
就可以认为,在n足够大之后,g(n)给出了T(n)的一个渐进下界。此时,我们记之为:
T(n) = Ω(g(n))
这里的Ω称作“大Ω记号”(big-omega notation)。

与大O记号相反,大Ω是对算法执行效率的乐观估计——对于规模为n的任意输入,算法的运行时间都不低于Ω(g(n))。

比如,即便在最好情况下,起泡排序也至少需要T(n) = Ω(n)的计算时间。

■大Θ(h(n)记号)
借助于大O记号、大Ω记号,可以对算法的时间复杂度作出定量的界定,亦即,从渐进的趋势看,T(n)介于Ω(g(n))与O(f(n))。
若恰巧出现g(n)=f(n)的情况,则可以使用另一记号来表示。

如果存在正的常数c1<c2和函数h(n),使得对于任何n>>2都有
c1*h(n) ≤ T(n) ≤ c2*h(n)
就可以认为在n足够大之后,h(n)给出了T(n)的一个确界。此时,我们记之为:
T(n) = Θ(h(n))

这里的Θ称作“大Θ记号”(big-theta notation),它是对算法复杂度的准确估计——对于规模为n的任何输入,算法的运行时间T(n)都与Θ(h(n))同阶。

三、看不懂的内容

n>>2。

四、相关笔试题

面试例题13、C++中的空类默认产生哪些类成员函数?

解析:类的概念问题

答案:构造,析构,拷贝,赋值。

面试例题14:structure是否可以constructor、destructor及成员函数?如果可以,那么structure和class还有区别吗?

答案:区别是class中的变量默认是private,struct中的变量默认为public。
struct可以有构造函数、析构函数,之间也可以继承。
C++中的struct其实和class意义一样,唯一不同的就是struct里面默认的访问控制是public,class中默认的访问控制是private。C++中存在struct关键字的唯一意义就是为了让C程序员有个归属感,是为了让C++编译器兼容以前用C开发的项目。

本文归类

建议归类到【数据结构】。

明日计划

标题:数据结构C++语言版_读书笔记11_空间复杂度
小知识:centos7配置本地源。

参考文献:

《数据结构(C++语言版)》,第11页。

《程序员面试手册》,第27页。

面试进度

投简历,广联达科技。

Linux视频学习进度,4.1.1与4.1.2,文件处理命令。

更多推荐

20200728

本文发布于:2024-02-28 04:41:59,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1767952.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!