计算机相关知识点小汇总

待写...

数据库:

MySQL语句:

查看table中所有元素

table中共有多少元素

查看key为某个值的元素

并查看共有多少个

(上面的顺利答出命令于是记住了。。后面还问了一些什么查看key1的前30个Key2的前35个元素怎么查。。我就不知道了。。还有一些其他命令我也不记得了。。

C++知识:

C++ new带括号和不带括号的区别: 转自这里

对于自定义类类型:

如果该类没有定义构造函数(由编译器合成默认构造函数)也没有虚函数,那么class c = new class;将不调用合成的默认构造函数,而class c = new class();则会调用默认构造函数。

如果该类没有定义构造函数(由编译器合成默认构造函数)但有虚函数,那么class c = new class;和class c = new class();一样,都会调用默认构造函数。

如果该类定义了默认构造函数,那么class c = new class;和class c = new class();一样,都会调用默认构造函数。

对于内置类型:

int *a = new int;不会将申请到的int空间初始化,而int *a = new int();则会将申请到的int空间初始化为0。

以下两个语句的区别是:第一个动态申请的空间里面的值是随机值,第二个进行了初始化,里面的值为0:

int*p1 =newint[10];

int*p2 =newint[10]();

结论:别使用不带括号的new。

2. 对qq号进行排序,哪种排序方法最快?

其中快速排序,堆排序,归并排序的时间复杂度都是nlogn,其中堆排序和归并排序的最坏时间也是nlogn,而快速排序最坏则为n2(n平方),只有归并排序是稳定的。

3. 排序算法的稳定性:

排序的稳定性并不是算法性能是否稳定。算法性能的稳定性,一般是说是否会退化。

需要分析算法本身的策略,是否能够具有稳定性。也就是保证键值相同的元素排序前后相对次序不变。

具体问题具体分析。例如,插入排序,前面的元素先插入已排序的序列,后插入的元素依次前移,直到不比前面的位置的大。相同的元素是不会越过的。

严格证明可以使用数学归纳法,对长度归纳。例如归并排序,长度为1时显然是稳定的,如果你小于n都稳定,很容易推出n+1也稳定。

不稳定性就找反例了。

选择排序用最小值和未排序元素做交换,可能会破坏相同键值元素的次序。

而快速排序,枢纽元如果是重复的值,选择不同位置的相同元素,就可能破坏次序。

注意: 大小比较和交换必须写正确,常见的错误就是序关系定义成了小于等于。虽然有时不影响正确性,但会影响稳定性。



参考 Gigi9 的简书

http://www.jianshu.com/p/5ecee333814f

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 34,704评论 18 399
  • 首先总结以下Java和C、C++中的一般控制台输入方式,方便以后的编程题: java键盘输入 java读文件(会自...
    androidjp阅读 2,383评论 0 16
  • 萧我在前面一文《别再说陶笛是民族乐器了》中已经介绍过了,以下为萧部分知识以及初学视频和曲子欣赏,希望你喜欢或者因此...
    我独一你无二阅读 4,010评论 4 2
  • 各位老师下午好,我叫叶粟,是这个老宅的守院人。今天我演讲的主题是“找到一条回家的路” 人生从出生到死亡,只有一条路...
    叶粟阅读 514评论 3 3
  • 有一天,遥不可及的远方再也比不了身边真实的点滴,原来想要的生活即是如此简单而真实。 2017.9.30 星期...
    星月新晨阅读 295评论 0 0

友情链接更多精彩内容