C++之行
文章平均质量分 86
从基础开始学习C++,功夫不怕有心人。
snow_5288
三天不读书,智商输给猪
展开
-
【排序二】选择排序(选择排序&&堆排序)
【排序一】插入排序一、选择排序1、基本思想 顾名思义,选择排序就是每次选一个数据放到其应该出现的位置,以升序(降序)为例,首先选最小(最大)的数据放到正确位置,接着再选次小(次大)的数据放到合适的位置,以此类推,直到最大(最小)的数据被放入最后一个位置,排序就算完成。总体算法分三步完成:选数据--->将所选数据放入合适位置--->缩小需要排序的范围图解原创 2017-03-01 20:27:47 · 1405 阅读 · 1 评论 -
【排序一】插入排序(直接插入排序&&希尔排序)
一、排序的分类原创 2017-03-01 15:08:43 · 2155 阅读 · 8 评论 -
迷宫求解
话不多说,直接贴代码:(一)运行迷宫:0表示通路,1表示墙,红色的0表示入口,绿色的一行表示出口1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 10 0 0 1 1 1 1 1 1 11 1 0 1 1 1 1 1 1 11 1 0 1 1 1 1 1 1 11 1 0 1 1 1 1 1 1 11 1 0 0 0 0 0 0 1 11 1 0 1原创 2016-12-04 22:41:24 · 6895 阅读 · 1 评论 -
智能指针
一、为什么要引入智能指针? 我们知道,C++中的动态内存需要用户自己来维护,动态开辟的空间,在出函数作用域或者程序正常退出前必须释放掉,否则会造成内存泄露,虽然有时我们已经非常谨慎了,然而当代吗比较长或比较复杂时,我们仍然可能忘记释放,正所谓防不胜防,一起看一段代码:void FunTest1(){ int *p = new int[10]; FILE* pFile =原创 2016-11-25 17:34:13 · 5098 阅读 · 0 评论 -
模板实现顺序表和链表
注:以下所有代码均在VS2010环境下测试C语言实现动态顺序表: http://blog.csdn.net/snow_5288/article/details/51558125C语言实现单链表: http://blog.csdn.net/snow_5288/article/details/52524830C++实现动态顺序原创 2016-11-12 14:05:57 · 6156 阅读 · 0 评论 -
模板的那丢丢事儿
注意:以下所有代码均在VS2010环境下调试运行模板的引入,函数模板,类模板的实例化、重载、特化等详解。原创 2016-11-08 13:09:49 · 4769 阅读 · 2 评论 -
多态---->C++的三大特性之二
一、多态性概述 1、多态引入---->数据的类型2、多态的概念3、函数重载&同名隐藏&重写4、纯虚函数&抽象类5、虚表剖析(单继承、多继承、虚拟继承、菱形继承)原创 2016-10-28 15:53:11 · 4036 阅读 · 0 评论 -
继承----C++的三大特性之一
一,为什么要引入继承?二,继承的定义格式三,继承方式&访问限定符四,派生类的六个默认成员函数五,继承体系中的作用域六,赋值与转换----赋值兼容规则七,单继承&多继承&菱形继承原创 2016-10-25 09:34:09 · 5188 阅读 · 2 评论 -
String类详解(浅拷贝,深拷贝,引用计数,写时拷贝)
String类:标准库类型string类表示可变长的字符序列,定义在std中,专门用来管理字符串,下面一起看下它的重要考点。一,浅拷贝 所谓浅拷贝,是指原对象与拷贝对象公用一份实体,仅仅是对象名字不同而已(类似引用,即对原对象起别名),其中任何一个对象改变都会导致其他的对象也跟着它变。如下面这段代码://浅拷贝class String{public:原创 2016-10-23 18:16:59 · 6409 阅读 · 3 评论 -
C++模拟双向链表的基本操作
双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。一般我们都构造双向循环链表。双(向)链表中有两条方向不同的链,即每个结点中除next域存放后继结点地址外,还增加一个指向其直接前趋的指针域pre。双向链表在查找时更方便 特别是大量数据的遍历原创 2016-10-21 12:32:52 · 3837 阅读 · 0 评论 -
C++实现动态顺序表
#includeusing namespace std;#include#define DataType intclass Seqlist { friend ostream& operator<<(ostream &_cout,const Seqlist& s);public: Seqlist(); Seqlist(DataType arr[],size_t size);原创 2016-10-20 22:57:23 · 3421 阅读 · 0 评论 -
C++模拟打印日历
我们每天都看日历,可是它是怎么实现的呢,一起来看看!本文章包括打印日历 && 日期类的各种运算符重载...原创 2016-10-14 12:54:26 · 5315 阅读 · 0 评论 -
this指针的那些事儿
this指针也叫自引用指针,专门用来存放当前正在被调用对象的地址。原创 2016-10-08 22:11:51 · 3382 阅读 · 0 评论 -
构造函数详解
(一)构造函数的定义: 一种特殊的成员函数,主要用于为对象分配空间,进行初始化。构造函数的任务是初始化类对象的数据成员,无论何时只要类的对象被创建,就会执行构造函数。原创 2016-09-27 17:16:07 · 7827 阅读 · 2 评论