自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

gaosaixing的博客

站的高,看得远

  • 博客(22)
  • 资源 (7)
  • 收藏
  • 关注

原创 深剖基类和派生类的虚函数表

1、当派生类实现基类的虚函数时,基类中虚函数表和虚函数地址和派生类中虚函数表和虚函数地址不同;当派生类不实现基类的虚函数时,基类中虚函数表和虚函数地址和派生类中虚函数表和虚函数的地址相同。1、派生类重新实现虚函数。查看其虚函数表和虚函数表中虚函数的地址 [cpp] view plain copy#include<iostream>  using namespace std;  clas...

2018-03-31 15:31:53 2494 2

原创 软件测试面试题

1、什么是兼容性测试?兼容性测试侧重那些方面?主要检验的软件的可移植性,检查软件在不同的硬软件平台上是否可以正常的运行。细分可分为:平台的兼容性,网络的兼容性,数据格式的兼容性等。2、常用的测试方法有哪些?黑盒测试,白盒测试,静态测试,动态测试,手工测试,和动态测试,回归测试,公测。3、白盒测试和黑盒测试的区别?黑盒测试就是功能性测试,一般是用穷举法输入测试,不会考虑内部的逻辑和实现。兼容性,安全...

2018-03-19 09:25:13 329

原创 常用的Linux命令

1、Top 查看进程的资源占用的情况。类似于windows中任务管理器。可以选用进程查看或者是用户查看。例如,选择oracel 用户查看,可以使用:  $ Top -u oracle2、pmap 可以根据进程查看进程相关信息占用的情况。pmap -d 14596 3、ps -a  显示终端用户上所有的用户,包括其他的用户。 -au 显示详细的信息 -aux 显示所有的包含其他使用者的进程,查看系统...

2018-03-18 15:38:37 154

原创 C++中内存分配的方式

1、栈:函数执行时,函数内的局部变量的存储单元可以在栈上创建。函数执行结束后这些存储单元自动释放。栈内存分配运算内置于处理器的指令器中,效率高,但是分配的内存容量有限。2、堆:就是那些new分配的内存块,由程序员来管理。一般对应着delete。3、自由存储区。就是那些malloc 等分派的内存块。她和堆一样,不过它用free来释放。4、全局/静态存储区。全局和静态变量被分派到统一内存快中。初始化和...

2018-03-16 18:08:38 301

原创 调整数组中的顺序使得奇数位于偶数的前面

1、 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分  设置两个指针,一个指向奇数,一个指向偶数。让第一个指针指向数组的头部,第二个指向数组 的尾部,第一个指针如果指向的数值是偶数,第二个如果指向的是奇数,而且两个指针满足p1<p2的话,则交换。void  ReorderOddEven(int *pdata,int ...

2018-03-14 14:06:35 301

原创 二维数组的查找(设计到获取vector大小)

在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。class Solution {public: bool Find(int target, vector<vector<int> > array) {bool res=false; ...

2018-03-13 18:37:07 4423

原创 计算蚊帐中有几个文字(科大讯飞笔试题)动态二维数组的创建

#include<stdio.h>#include<iostream>using namespace std;int main(){ int count = 0; int n; cin >> n; const int m = n; int a[3]; for (int i = 0; i < 3; i++) { ...

2018-03-13 17:52:16 231

原创 递归思想斐波那契数列变形

青蛙跳台阶:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。class Solution {public:    int jumpFloor(int number)    {          int n=number;        int res=0;        if(n==1||n==2)        {            res=n;  ...

2018-03-13 16:08:06 292

原创 输出旋转数组中最小的元素

把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。思路:看成是两个有序序列。class Solution {public:    int minNumberInRotate...

2018-03-13 15:08:42 237

原创 C++中纯虚函数与虚函数的区别

1、在一个类中定义一个纯虚函数,则这个类是抽象类。纯虚函数在基类中是不实现的,只是提供一个接口。在子类中分别去实现。在很多情况下,类本身是不生成对象的。动物作为一个基类可以派生出老虎、孔雀等子类,但动物本身生成对象明显不合常理。纯虚函数就是基类只定义了函数体,没有实现过程,定义方法如: virtual void Eat() = 0; 不要 在cpp中定义;纯虚函数相当于接口,不能直接实例化,需要派...

2018-03-13 11:01:18 490

原创 二维数组与指针、指针数组、数组指针的用法

二维数组和指针⑴ 用指针表示二维数组元素。要用指针处理二维数组,首先要解决从存储的角度对二维数组的认识问题。我们知道,一个二维数组在计算机中存储时,是按照先行后列的顺序依次存储的,当把每一行看作一个整体,即视为一个大的数组元素时,这个存储的二维数组也就变成了一个一维数组了。而每个大数组元素对应二维数组的一行,我们就称之为行数组元素,显然每个行数组元素都是一个一维数组下面我们讨论指针和二维数组元素的...

2018-03-12 18:16:20 56528 41

原创 C++中什么情况下必须在初始化列表中完成初始化

1、当类的成员是常变量时,即用const来回修饰的类的成员;2、类的成员是引用;3、需要初始化的数据成员是对象的情况(这里包含了继承情况下,通过显示调用父类的构造函数对父类数据成员进行初始化);      数据成员是对象,并且这个对象只有含参数的构造函数,没有无参数的构造函数;     如果我们有一个类成员,它本身是一个类或者是一个结构,而且这个成员它只有一个带参数的构造函数,而没有默认构造函数,...

2018-03-12 14:28:07 3024

原创 常见的排序算法分析

1、冒泡排序。冒泡排序执行的时间取决于比较的趟数,在最好的情况下,待排序的记录是正序,算法只执行一趟,进行了n-1次关键码的比较,不需要移动记录,时间复杂度是O(N);最坏的情况下,是倒序,每次比较只有一个最大的记录被交换到最终的位置,故算法执行了n-1趟,每次比较的次数是n-i,关键码比较的次数是n(n-1)/2.。平均情况的时间复杂度与最坏的情况是同一个数量级的。空间复杂度o(1).  它是稳...

2018-03-10 16:56:44 439

原创 常见的面试笔试题

1、#include<stdio.h>#include<iostream>using namespace std;void main(){ int c = 5; if (c++ == 5) { printf("%d\n", c--); printf("%d", c); } else { printf("%d",c++); } system("pause"); }答案:

2018-03-09 22:26:59 1942

原创 两个栈实现一个队列

#include<iostream>#include<stack>using namespace std; template<typename T>class Queue{public: Queue(); ~Queue(); void Inqueue(const T& item); bool isEmpty(); T DeleteHead();priva...

2018-03-08 20:15:02 117

原创 常见的二叉树面试题

/*****************************算法思想:使用的是栈结构步骤一:如果节点有左子树,则将该节点入栈;如果该节点没有左子树,则访问该节点步骤二:如果节点有右子树,则重复步骤一;如果没有右子树(则说明该节点文访问完毕),则根据栈顶指示回退,访问栈顶元素,并访问右子树,重复步骤一若栈为空,表示遍历完成。*******************************/#d...

2018-03-08 19:03:26 212

原创 C++中new/delete 和malloc/free的区别

1、new、delete是C++中的操作符,而malloc和free是标准库函数。2、对于非内部数据对象来说,只使用malloc是无法完成动态对象要求的,一般在创建对象时需要调用构造函数,对象消亡时,自动的调用析构函数。而malloc free是库函数而不是运算符,不在编译器控制范围之内,不能够自动调用构造函数和析构函数。而NEW在为对象申请分配内存空间时,可以自动调用构造函数,同时也可以完成对对...

2018-03-08 16:09:26 15130

原创 SQL语句中sum与count的区别

sum(*)对符合条件的记录的数值列求和;count(*)对符合条件的结果个数(或者记录)求和。表fruitid     name    price1     apple     1.002     pear       4.00select count(price) from fruit; ----执行之后结果为:2  (表示有2条记录)select  sum(price) from fruit...

2018-03-07 16:55:09 2173 1

转载 链表中何时用二级指针或一级指针引用

在用c/c++写数据结构程序时,链表和二叉树中经常需要用到二级指针或者一级指针的引用,那么什么时候用什么时候不用呢?先看一个简单的c++链表操作程序:(虽然风格有点像c,不过这个是cpp文件,不要在意这些细节)[cpp] view plaincopy/* code:Linklist author:tashaxing time:2014.9.30 */  #include "stdio.h"    ...

2018-03-04 20:16:36 2956 3

原创 链表面试题

1、单链表的创建、插入节点、删除节点、反转等基本操作。#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<iostream>#include<string.h>typedef struct Listnode{ int data; struct Listnode* pnext;}node...

2018-03-04 20:15:04 135

原创 面试总结1

1、MAP的底层结构是什么?查找的最坏的时间复杂度是什么?红黑树。O(logn)2、堆排序和选择排序算法的思想和实现?3、查找最大N个数用最大堆还是最小堆?4、Linux命令中VIM中替换字母和单词的命令?5、Linux中chmod 577是什么意思?6、详述一下vector 的add()和push_back()的原理和实现?7、智力题。一辆车装满油最远可以走L米,两辆车互相可以给对方加油,一共N...

2018-03-02 11:43:49 128

原创 面试总结2

1、C/C++内存泄漏(1)基类的析构函数没有定义为虚函数;(2)缺少拷贝构造函数或重载赋值运算符; 两次释放相同的内存是一种错误的做法,同时可能会造成堆的崩溃。按值传递会调用(拷贝)构造函数,引用传递不会调用。所以一个类中有指针变量时,要么显示的写拷贝构造函数和重载操作符函数,要么禁用拷贝构造函数和重载操作符。 (3)在释放对象数组时,在delete中没有方括号。(4)没有正确清楚嵌套的对象指针...

2018-03-01 18:45:18 95

XL2401无线通讯模块发送测量的风速、温湿度

这是基于单片机的测量风速、温湿度的无线模块XL2401发送给另一个单片机发送端程序

2016-06-21

DA14580单片机实现测温湿量度甲醛

这是基于DA14580单片机的C代码。可以实时测量周围环境的温湿度、甲醛。

2016-06-21

12864显示屏C程序

基于51单片机的12864液晶显示屏程序,可以显示汉字和字母,用户可以显示自己想要显示的文字

2016-06-06

超声波测距数码管显示

利用超声波HC-SR04模块测距,并在数码管上显示出精确数值

2016-05-30

基于51单片机的竞答器的设计

涉及到两个单片机通信,一个发,一个收,而且可以随即出题加法题,可以显示答案的对错。

2016-05-30

基于51单片机4层电梯设计

这是基于51单片机设计的4层电梯,用到4个直流电机和两个步进电机,两外用到8255A扩展IO口。在KEIL下可以直接运行,正常实现上下楼梯,运行停止等。

2016-05-30

基于DA14580便携式空气质量检测仪

此便携式空气质量检测手环由PM2.5传感 器,甲醛传感器,温湿度检测传感器,陀螺仪,DA14580等组成,小巧,节能,可随身携带。采用的是蓝牙传输数据, 而非WiFi,可以使接收端的手机在接收数据的同时不影响上网功能。此外,此设计在实现检测周围环境质量的同时, 还增加了测量步伐和卡路里的功能,采用陀螺仪三轴加速度传感器计步测算法。

2016-05-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除