自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 链表的基本功能,检查并消除循环插入

看着都简单,其实写起来不是这里出毛病,就是那里出毛病,要命的是,每次写法不同,毛病也不同……写这个博客用来做总结复习,还有就是看看能不能帮到小白学习数据结构,每当我发现自己感觉没什么可总结的,可说的,就写写博客,这样就有话了。链表(这里只是单链表)的基本功能包括:创建、插入、删除、清理、排序、查找等其他的功能。这里做一个总体的实现1.创建一个链表,并实现基本功能:创建、插入、删除、...

2019-08-02 19:13:49 348

原创 快速排序(C++实现)

快排在算法里面绝对是经典中的经典了,各种场合,各种面试题,大多都换汤不换药,基本的思想都是那样。所以今天就复习总结一下快排:最开始学习算法的时候,快排是那种从两头开排的,直到两边碰头就截止。是这样的,找到一个中轴temp(一般就取开头那个元素),从尾开始比较,直到找到比temp小的,交换一下当前的arr[i]与arr[j],这次比较完了就从头部开始找,直到找到比temp大的做同样的交换...

2019-08-02 13:47:15 380

原创 二分搜索

二分搜索,说白了,就是从对一个有序的排列中每次分一半进行查找元素。初学比较难把握的各个值得的范围限制,这属于数学的思维的,不多说,上代码吧。int binarysearch(int a[],int low,int high,int elem){ if (elem > a[high] || elem < a[low]) { return -1; } int...

2019-07-24 18:49:55 200

原创 一个简单的swap交换函数

基础比我想得重要,一不注意就出错了,而且真的不好找……今天就犯了一大打错,写交换函数的时候写错了,沉重的打击了我幼小的心灵……哎,是这样的。//这是一种错误的写法,形参传进来的是实参的地址,temp如果被赋值为a的地址//然后a指向的内存中的值是b指向的内存中的值,这一步是半成功的,因为,同时temp与a指向的内存相同,*temp和*b的值一样……//a原本指向的内存中的值被更改的,不知...

2019-07-19 11:40:07 1558

原创 静态库入门(VS2017&win10)

其实很早就接触到了DLL相关知识,只是最近项目要用到了,才想起来好好的学习一下。学习DLL前先学习一下静态库。静态库注意是Visual C++里面的Windows桌面,里面的静态库。建完之后得到这样的解决方案。生成的文件里面包括这些,自己写的代码不放在这些文件里面,新建一个ok.h与ok.cpp,注意里面要写进去#include "stdafx.h",不写的话得报错。/...

2019-05-18 15:59:43 303

原创 了解一下C++的析构函数

我不是写博客的,我只是博客的搬运工。是写还是不写呢,好像没什么用呀。其实我感觉《C++primer》里面对于析构函数讲解的不是很详细,总感觉析构函数的知识点不止这么多呀(可能我看的不仔细吧)……(这里纠正一下,之前我用的是vs2017的空项目,用system("pause")来暂停控制台,导致了析构函数的打印以及反汇编都没有看到调用析构函数,用控制台程序的时候就会调用析构函数,看来,只要构造了...

2019-05-13 18:40:28 234

原创 看看C++构造函数

这也是《C++primer》的笔记和心得,其实对于C++的构造函数很熟悉了,但常常感觉这么用,但都没有深究其中的原理和机制。趁此机会,好好的回顾一下。构造函数最大的作用就是构造函数并初始化对象,与普通的函数看上去最大的区别就是没有返回值了吧,返回值类型不是void,是没有返回值。还有就是函数名必须与类名相同,最常见的构造函数就是什么参数也不带,其实这个函数也是很重要的(缺省构造函数),因为在定...

2019-05-11 15:03:54 1447

原创 C++中的动态分配(《C++primer》笔记心得)

在C++中初步阶段中最难理解的估计就是这个,对程序中各部分的储存方式和位置也是从这里开始探究的,现在照着这本书,把感觉有意义重要的地方再说一般。以后可别忘了,不怕学不会,就怕学会了,然后忘了。1.new的操作很可能会失败,很可能会失败,很可能会失败呀,这下面的代码在我的电脑失败了。提示了一下bad_alloc异常。int main(){ int *temp; for (long l...

2019-05-07 23:25:09 209

原创 C++中类的初始化

这是《C++primer》的笔记和总结,在C++的类中,用来初始化类中的成员的方式多种多样,常常是依据这些变量的特性来决定的,比如const、static以及引用等类型。这里说的是最普通的初始化方式,估计用的也最少,是继承自C语言中的初始化机制。在C语言中,一个数组的初始化可以写成这样:int arr[5] = { 0 };#include <iostream>#in...

2019-05-05 18:08:39 2726

原创 浅析C++中的虚函数(二)

上一次总结了点虚函数的一点原理和基础,也都是比较平常的函数,这次涉及到一点C++中重要的析构函数。虚析构函数,在C++程序中,当基类中存在虚函数的时候,必然需要使得基类的指针对象指向其他派生类型的对象,当在结束的时候释放基类类型的指针会发生一些未定义的行为(没有析构派生类的对象,应该是内存泄漏),看一下代码:#define CRTDBG_MAP_ALLOC #include <...

2019-05-04 17:29:38 206

原创 浅析C++中的虚函数(一)

在C++中虚函数是很重要的一个知识点,对于它,还是感觉似懂非懂,这次写下来当作总结了吧。虚函数的思想是,根据指向或引用的对象类型调用虚函数,而不是根据指针本身或引用本身的类型,虚拟函数在运行时后期解析。换句话说,存在虚函数的类创建一个指向子类的指针或引用,当该指针指向子类时,可以调用派生类中重载父类的方法,没必要管派生类对象是什么,引用也是如此。具体的代码如下,注释说的很清楚了:#in...

2019-05-03 23:44:37 283

原创 QCheckBox&QButtonGroup

最近刚学Qt在看Qt5开发实战,刚开始嘛,一步一步学,记录一下学习过程,有些深入的先不追究。刚看完QCheckBox与QButtonGroup,其实这两个控件平时都很常见,觉得很有用,QCheckBox就是复选框,而QButtonGroup就是对复选框进行分组和布局的(暂且这么认为吧)。下面的代码都直接声明定义在一起了,省的来回切换,粘过去应该就可以跑。先看代码,再一个个解释一下。#incl...

2018-11-11 16:22:12 1732

原创 全排列应用问题

    前几天碰到一个算法问题,涉及到全排列。刚好也想温习一下算法,所以就写出来,意思意思。题目大致是这样的:    有9个数字,分成3组,每组中的三位数分别构成一个数,使得这三个数的比例为1:2:3。    问:有多少组这样的数,分别打印出来。    上代码:#include "stdio.h"#include "stdlib.h"int count(int i); ...

2018-10-21 23:19:24 289

原创 用C++写的C++词法分析器

       这是学校实验做的一个小实验,前前后后,断断续续的花了我差不多一下午的时间,电脑里是不存代码了,写到这里,蹭访问量吧! (详情代码里都有注释,如有需要交流的欢迎加qq:2152574098,楼主小白一个)#include &lt;iostream&gt;#include &lt;string&gt;#include &lt;map&gt;#include &lt;fstre...

2018-10-21 23:15:02 962

原创 从汉诺塔看递归

    刚入门算法,首先接触到的就是递归。在网上查了一下,几乎都说递归特别简单,弄得我心里慌得不得了,我就在想:为什么我感觉递归总是不懂,这感觉不对劲啊!但也没过分追求,不懂就不懂吧,回头再说。今天有空,就把这个当初看到的汉诺塔问题写一下,总结总结,问题什么的就不多说了,直接上代码(这代码是借鉴别人的)。#include &lt;iostream&gt;using namespace std;...

2018-03-31 11:31:12 1222

空空如也

空空如也

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

TA关注的人

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