04 2019 档案

摘要:1. markdownpad——写markdown文件,写记录和代码日志 2. vim 3. FLAC APE WAV 音频格式。 4. latex 5. Emedit 优势在于搜索比notapad快 6. notepad++ 用的比较习惯 7. beyondCompare 文本比较工具 8. Po 阅读全文
posted @ 2019-04-26 18:55 Brickert 阅读(59) 评论(0) 推荐(0) 编辑
摘要:最近总结了以下排序算法: 插入排序:直接插入排序,希尔排序 交换排序:冒泡排序,快速排序(挖坑法,前后指针法,左右指针法) 选择排序:直接选择排序,堆排序 归并排序 所以想对这些排序算法再做一个对比。 一、理论值对比 (参考:https://www.cnblogs.com/angelye/p/750 阅读全文
posted @ 2019-04-26 18:35 Brickert 阅读(214) 评论(0) 推荐(0) 编辑
摘要:一、基本思想 归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(divide-and-conquer)的一个非常典型的应用。(分治法将问题分(divide)成一些小的问题然后递归求解,而治(conquer)的阶段则将分的阶段得到的各答案"修补"在一起,即分而治之)。 归并排序的步骤 阅读全文
posted @ 2019-04-26 18:03 Brickert 阅读(165) 评论(0) 推荐(0) 编辑
摘要:一、直接选择排序 #include <iostream> using namespace std; void print_array(int a[], int n) { for(int i = 0; i < n; i++) cout << a[i] << " " ; cout << endl; } 阅读全文
posted @ 2019-04-24 19:51 Brickert 阅读(327) 评论(0) 推荐(0) 编辑
摘要:一、冒泡排序 #include <iostream> using namespace std; void print_array(int a[], int n) { for(int i = 0; i < n; i++) cout << a[i] << " " ; cout << endl; } vo 阅读全文
posted @ 2019-04-23 23:16 Brickert 阅读(329) 评论(0) 推荐(0) 编辑
摘要:插入排序的思想:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子数组中的适当位置,直到全部记录插入完成为止。 一、直接插入排序 #include <iostream> using namespace::std; //打印 void print_array(int a[], int n) 阅读全文
posted @ 2019-04-23 16:23 Brickert 阅读(271) 评论(0) 推荐(0) 编辑
摘要:昨天遇到一个很奇怪的问题,如下: 按照理论,最后*p的值应该是99,不知为什么是15了,所以今天记录用gdb调试的过程,并熟悉gdb的使用。 (调试过程参考:http://www.cnblogs.com/hankers/archive/2012/12/07/2806836.html) 开始: 1. 阅读全文
posted @ 2019-04-20 14:24 Brickert 阅读(3709) 评论(0) 推荐(0) 编辑
摘要:面试被问到上述问题,所以特地总结一下: 一、new和malloc的区别。 1.new可以返回指定类型的指针,并且自动分配内存大小;malloc需要计算手动计算分配空间的大小,并且返回值需要强转为实际类型的指针。 2.malloc只会进行内存分配,不会进行初始化,所以其值是随机的;new在内存分配的同 阅读全文
posted @ 2019-04-15 16:10 Brickert 阅读(409) 评论(0) 推荐(0) 编辑
摘要:昨天看到一句话:对虚函数的调用不一定是动态联编,我的映像中一直以为虚函数就是动态联编的,所以记录下来。 一、动态联编是什么? 引自多态的概念:当不同的对象调用相同的名称的成员函数时,可能引起不同的行为(执行不同的代码),这种现象叫多态性。将函数调用链接相应函数体的代码的过程称为函数联编。在C++中, 阅读全文
posted @ 2019-04-15 14:13 Brickert 阅读(3250) 评论(0) 推荐(0) 编辑
摘要:例一: #include <iostream> using namespace std; class A { public: char c; }; class B { public: int a; short b; }; class C { public: int a; short b; char 阅读全文
posted @ 2019-04-14 16:26 Brickert 阅读(2041) 评论(0) 推荐(0) 编辑
摘要:前因: 1.C++中多重继承,即一个派生类可以有多个基类。如果多个基类有同名成员或同名函数,派生类对象对其访问时会产生二义性。 举例: #include <iostream> using namespace std; class Base1 { public: Base1(int var){cout 阅读全文
posted @ 2019-04-14 15:07 Brickert 阅读(2043) 评论(0) 推荐(0) 编辑
摘要:记录了学习虚函数与纯虚函数中有一些疑问,以及平常可能不注意的地方。 Q0:虚函数是怎么实现的? 0:简单的说,是通过虚函数表实现的。如果一个类中含有虚函数,则系统会为这个类分配一个指针成员指向一张虚函数表(vtbl),表中每一项指向一个虚函数的地址,实现上就是一个函数指针的数组。 Q1:基类函数加上 阅读全文
posted @ 2019-04-13 17:43 Brickert 阅读(1483) 评论(0) 推荐(0) 编辑