自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 c++算法:数组里面出现次数超过一半的数

题目:返回数组中出现次数大于一半的数。 题目分析:若将数组进行排序后,数组中间的数就是出现次数大于一半的数。 解决方案: 利用快排的Partition思路。 具体操作:每次partition返回的是该基准在数组中排序后的位置,如果该位置正是中间位置,直接返回。如果该数的位置大于中位数,那么对该数左边的数进行partition,反之右边。 算法分析:时间复杂度:O(n)。因为partition除了可以返回该数排序后的位置,还有重要的一点是把所有小于和大于它的数放在两边。所以算法可以根据

2021-09-20 13:25:44 1363

原创 Qt QGraphicsScene绘制背景图片,并解决item移动破坏背景问题。

今天尝试了一个Qt的QGraphics框架,框架的概念如下:具体的框架介绍不是本文的重点,就不多介绍,本文要解决的问题是在scene上绘制背景图片,并解决item移动破坏背景的问题。毕竟scene单纯一个this->sce->setBackgroundBrush(QColor(240,240,240));设置背景颜色实在太过单调。记录的思路如下:今天主要成功设置了开机动画的背景。如何设置背景?从view,scene,item模型可以看出,背景应该在scene设置,百..

2021-09-14 17:03:08 4050 3

原创 这个图明明满足红黑树的所有性质,为什么还说红黑树不会退化成线性表?

先上图:红黑树的性质:1.结点非黑即红;2.根节点为黑;3.叶结点为黑;4.红结点的子节点为黑;5.任意结点到叶结点路径上的黑结点数相同。今天复习红黑树的时候,突然想起了这种情况。乍一看,似乎还真满足红黑树上诉的所有性质。那岂不是说红黑树还会退化成线性表?那不是出大问题?所以肯定哪里出问题了。----------------------------------------思考了一下,发现其实这个情况根本就不会出现。因为一颗红黑树的创建肯定是从null.

2021-09-10 22:59:54 257 1

原创 亿联网络C/C++三面(终面)经验分享

公司:亿联网络岗位:C/C++研发工程师时间:2021.9.2状态:等通知中主要内容:1.自我介绍2.挑两个项目介绍一下3.问项目问题,项目的来源,构思等4.inline函数5.其中一个是网上自学,问:你觉得自己写的和网上的最大的优点在哪?6.对数据结构有哪些了解7.哈希表的原理8.如何判断一个哈希表的优劣9.程序内存堆,栈相关问题10.手撕代码1:题目大概是一个字符串包含另一个字符串的最短序列长度。11.手撕代码2:驼峰命名和下划线命名的相互转换。12.这三年平时

2021-09-03 10:32:45 1067

原创 MFC exe项目封装成DLL

一言以蔽之:给原项目包层接口。具体实现:新建一个MFC的DLL项目(MyDll); 删除MyDll项目的.rc文件; 将正常运行的exe项目(MyExe)的所有文件包括.h,.cpp,.rc和资源文件等复制到MyDll项目,MyExe.rc文件重命名为MyDll.rc 删除原实例化WinApp的.cpp类及其头文件,(一般名称为MyExe.cpp和MyExe.h);将所有对它的引用改成MyDll.h;(不做这一步会产生datacore.cpp line:380的错误); 在MyDll.cpp

2021-07-26 15:04:32 1537

原创 c++枚举类,六点解决所有问题

关键字:enum 格式:enum Color_Set{RED,YELLOW,BLUE,GREEN}; 每个元素都是整型常量的标识符,默认值为其下标;即RED=0,YELLOW=1... 可以为其中的部分值赋值:enum Color_Set{RED=-1,YELLOW,BLUE=2,GREEN};但必须为整数; 赋值后,其下一个元素的值为上一个元素的值+1;例如上例RED=-1,YELLOW=0,BLUE=2,GREEN=3 使用: Color_Set color;color = RED; 错误使用

2021-07-16 10:42:36 171

原创 【C++】类的运算符重载

运算符重载: 主要作用:实现类对象之间的运算; 隐式调用和显式调用; 类内部进行运算符重载只需要一个参数,因为类对象本身就是一个参数; 规则: 运算符重载不允许发明新的运算符; 不能改变运算符操作对象的个数; 运算符被重载后,其优先级和结合性不会改变; 不能重载的运算符: ​​​​​​ ​ Complex.h#ifndef COMPLEX_H#define COMPLEX_Hclass Complex{public: Com.

2021-07-11 10:49:37 1163

原创 【C++】保姆级单实例类的理解

首先,单实例类要实现的目的是:在全局上某个类的对象有且只有一个,且所有对该类的访问都是指向同一个对象,如下: WinCtl *winctl = WinCtl::getInstance();winctl->winJump(); 因此这个类不能被外界多次实例化(创建多个对象),即其构造函数不能被多次调用,所以将其构造函数限制为private或者protected,使外界无法直接访问; class WinCtl{public:private: WinCtl();};

2021-07-03 17:43:26 71

原创 【C++】虚函数和重载函数的区别

成员函数被重载需要在相同的范围(同一个类),而虚函数要求在不同的范围(一个在派生类,一个在基类); 重载函数要求函数有相同函数名,并且参数序列要不同,而虚函数要求函数名、返回值类型和参数序列完全相同; 重载函数可以是成员函数或者友元函数,而虚函数只能是成员函数; 重载函数的调用是以所传递参数序列的差别作为调用不同函数的一句,而虚函数是根据对象的不同去调用不同类的虚函数; 虚函数在运行时表现出多态功能,这是c++的精髓;而重载函数则在编译时表现出多态性; ...

2021-07-03 12:07:05 617 1

原创 [c++]父类数组直接调用方法,不会根据具体子类调用子类重写的方法,而是全部调用父类的方法【解决办法】

问题:例如:父类:class CtlBase{public: char content[30]; int ctlType; CtlBase(); CtlBase(int x,int y,int w,int h,char *content,int ctlType); ~CtlBase(); void show();private: int x; int y; int w; int h;};子类1:class Label:public CtlBase{pu

2021-07-02 13:46:30 358

原创 C++字符数组错误:只对一个位置赋值,整个数组变成乱码解决办法

原本下面这条语句应该能正常运行:;但是查看内存后发现:就是除了第一个位置被正常赋值外,字符数组后面被莫名其妙加了一串乱码。经过检验,字符数组是地址传递:上述的操作也符合语法,字符数组也经过初始化为空,ch也为char型,这本不应该出现任何问题。后来发现把i改成任意一个数组长度内的常量数值,就不会被添加乱码:但这样根本没有什么用。。。解决办法:尝试了很多办法,最后找到的办法是:数组要进行初始化:虽然之前有用strcpy(content,""),但在这之前要先进行

2021-06-30 10:34:13 1047

原创 C++类的继承关键知识点

继承:父类(基类)与子类(派生类): 继承的意义 便于管理系统中的对象; 系统扩充比较容易:利用程序代码的再用性; 加快程序发展的速度; 减少程序的错误; 类的复合; 继承的格式:class 类名:继承方式(public private protected) 父类名 基类的数据成员放在protected里,便于派生类的访问; 三种继承方式的对比: 派生类的占用空间:自己的数据成员占有的空间+父类占有的空间; 派生类的构造:先调用基类的默认构造,再调用自己对应的

2021-06-29 21:27:44 147

原创 C++报错:_BLOCK_TYPE_IS_VALID 解决办法

问题:原因:释放了不存在的内存;解决方案:原来释放链表的freeList函数先释放了node->data再释放整个node:用new开辟空间后改为:然后就报错了。delete似乎会级联删除?即删除p的时候,会把p->data指向的区域也删除了。所以注释掉第一行即可正常运行:还只是猜测没有去验证,如有出错敬请指正~...

2021-06-21 23:03:24 2276 2

原创 编译原理复习提纲【大纲版】

编译原理复习提纲第一章问答题叙述编译程序结构框架。2、什么是编译的前端和后端?3、编译过程的五个阶段,哪些阶段是与硬件无关,哪一些是与硬件相关的?第二章问答题:1、描述乔姆斯基四型文法。2、什么是句型、句子?3、什么是语言?用形式语言描述什么是语言。第三章问答题:1、请用状态图和正规式描述标识符。2、确定有限自动机的形式化描述。3、非确定有限自动机的形式化描述4、什么是lex?第四章问答题:1、自上而下语法分析为什么...

2021-06-20 18:22:41 275

原创 c++基础:c++与c的区别

面向对象的四大特性:抽象,封装,继承,多态; C++输出函数:cout<< <<endl:换行; 访问命名空间中的内容:命名空间名称::内容(变量或者函数); C++新增的数据类型:bool,类; Bool只有true(1)和false(0)两种取值,内存中一般占一个字节,不同编译器可能不同;可以当做整数来用; C++结构体位段: C++结构体可以为其成员指定所占的位数(一个字节占8位); 优点:节省内存空间; 同样具有内存对齐的特点; 例如: ...

2021-06-20 16:39:19 82

原创 ubuntu修改文件编码格式为UTF-8

文件编码格式修改为UTF-8:(1)查看编码格式:file 文件路径;出现Non-ISO extended-ASCII text(未知编码格式);(2)解决方案:不用管文件原来是什么格式,直接将文件另存为,编码格式改为UTF-8即可。...

2021-06-20 14:59:33 3436 1

原创 hadoop下mapreduce运行时卡在 Running Job不动的解决办法

问题:如题所诉解决方案:1.

2021-06-20 14:57:22 1112

原创 [精华]linux下hdfs的datanode正常运行,但是hdfs dfsadmin -report全部为0,Configured Capacity:0(0B)的5种解决办法.

datanode正常运行,但是hdfs dfsadmin -report文件空间为0解决方案:Slave对Master的访问存在问题:1.hosts里ip映射出错,2.hdfs配置文件core-side或hdfs-side等配置出错,尤其是其中的ip地址;3.关闭hdfs,格式化namenode:hdfs namenode -format ,重启。4.namenode的currentID要和datanode的一致,文件在/hadoop/tmp/dfs/name(data)/current/VERSION

2021-06-20 14:50:31 1810 1

原创 your program can cause an assertion failure解决方法

问题:敲代码的时候遇到这个错误提示:但是程序是正常运行的

2021-06-19 09:43:07 1880

原创 报错:illegal use of this type as an expression

运行以下代码的时候: NODE_T *menu = NULL; menu = List_init(); MENU_T *m = NULL; ......xi'tong

2021-06-15 16:09:03 739

原创 【详述】C语言如何构建通用链表,如何使用通用链表

前置条件:结点的结构体:typedef struct node{ void *data; struct node *next;}NODE_T;

2021-06-15 15:57:21 237

原创 C语言链表:函数内部对头结点head的修改为什么不会改变外面的head?

问题:void List_add(NODE_T *head,void *data){ //新建一个结点 NODE_T *newnode = NULL; newnode = (NODE_T*)malloc(sizeof(NODE_T)); if(!newnode) { printf("开空间失败!\n"); exit(0); } memset(newnode,0x0,sizeof(NODE_T)); newnode->next = NULL; //赋值 newnod

2021-06-15 07:46:20 1153 3

原创 【精华版】大数据原理与应用第二版复习考点提纲

第一章大数据问题的定义和来源P3-5 存储设备容量不断提升; 信息储存 CPU处理能力大幅度提升; 信息处理 网路带宽不断增加; 信息传输 大数据问题的特点P7-94V 数据量大(Volume) 数据类型多(Variety) 处理速度快(Velocity) 价值密度低(Value) 大数据应用四大层面的关键技术P15 数据采集和预处理; 数据存储和管理; 数据处理和分析; 数据安全和隐私保护; 大数据四大计算模式:除图计...

2021-06-13 21:28:17 435 4

原创 VC++工程导航栏的目录消失了怎么办

刚敲完的代码碰上电脑死机或卡住强退,重启后发现导航栏里没有刚敲的.c和.h文件列表,但项目可以正常运行。原因:电脑死机或强退的情况下,工程的日志文件没有保存,下次启动时自然无法找到文件路径。解决办法:1.打开工程文件夹,找到(工程名).dsp文件,用文本编辑器打开2.下拉找到如下图的字段# Begin Source FileSOURCE=.\*****.cpp# End Source File3.以这些字段为一个单位,根据项目目录下的文件,将缺失的文件名填进去,然

2021-05-02 10:14:33 2025

原创 报错:libpng warning: iCCP: cHRM chunk does not match sRGB解决办法

敲代码时出现以下报错:libpng warning: iCCP: cHRM chunk does not match sRGB解决办法:如果输入法使用的是qq输入法,切换成别的输入法。

2021-04-25 20:26:25 4687 3

空空如也

空空如也

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

TA关注的人

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