程序人生,C++
文章平均质量分 80
爱喝茶的程序猫
软件学菜鸟,好好地做下去
展开
-
C++实现带头结点单链表
单链表属于基本数据结构中的线性结构,它应用于很多数据结构中,例如栈,队列等,作用广泛。在数据结构中我们习惯把关于单链表的一系列操作制作为一个ADT(Abstract Data Type)使用,在C++中把它封装为一个类,使用起来更是方便。关于单链表的操作包括插入(包括头插和尾插)、删除、查找、检查是否有环、环的长度、环的入口等操作。以下就是我的代码实现:每个结点的数据类型应该是一个结构体类原创 2017-10-29 00:37:01 · 2031 阅读 · 0 评论 -
C++继承
继承 通过继承联系在一起的类构成一种层次关系。通常在层次关系的根部有一个基类,其它类则直接或间接从基类继承而来,这些继承得到的类称为派生类。基类负责定义在层次关系中所有类共同拥有的成员,而每个派生定义各自的成员。继承实现了代码的复用。1.派生类对象的内存分布class Base{public: int ma;};class Derive : public Base原创 2018-01-04 16:30:43 · 157 阅读 · 0 评论 -
GitHub的安装及基本使用
基础知识GitHub学习从认识开始吧! GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git最为唯一的版本库格式进行托管,故名GitHub。在GitHub可以十分轻易地找到海量的开元代码。 那么Git是什么? Git,是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 Git功能特性: 从一般开发者的角度来看,Git是这样的: 1.从服务器...原创 2018-02-09 10:24:16 · 420 阅读 · 0 评论 -
位操作
移位操作移位操作只是简单地把一个值的位向左或者向右移动。在左移位中,值最左边的几位被丢弃,右边多出来的几个空位则由0补齐。,如图是个左移位的例子,它在一个8位的值上进行左移3位的操作,以二进制形式显示。这个值所有的位均向移三个位置,移出左边界的那几位丢失,右边空出来的几个位则用0补齐。 右移位操作存在一个左移位操作不曾面临的问题:从左边移入新位时,可以选择两种方案。一种是逻辑移位,左边移入的...原创 2018-02-10 13:00:22 · 237 阅读 · 0 评论 -
排序---排序算法2
上一篇总结了简单的排序算法,这一篇继续。。。堆排序思想堆,堆顶元素(即第一个元素)必为最小项(小顶堆)(升序序列)或者最大项(大顶堆)(降序序列)。若以一维数组存储一个堆,则堆对应一棵完全二叉树,且所有非叶结点的值均不大于(或不小于)其子女的值,根结点(堆顶元素)的值是最小(或最大)的。虽然说是一棵完全二叉树,但不是说就得根据这些数据还需要重新建立数据结构,对于一维数组有这样的规定:原创 2018-02-07 16:24:07 · 176 阅读 · 0 评论 -
C++之四种类型转换
我们都知道C语言中也有类型转换,常见的有两种,一种是默认转换,例如从int类型的数据转换为一个float类型的数据,这样是可以成功的;另外一种是强制转换,这也是我们非常熟悉的操作,这里也就不多说了。 这篇文章主要介绍C++boost库中的四种类型转换:const_cast说明:这个类型转化操作传递对象的const属性,或者是设置或者是移除。用法:const_cas...原创 2018-02-22 12:32:12 · 272 阅读 · 0 评论