排序:
默认
按更新时间
按访问量

111

class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = 0); ~MainWindow(); private slots: vo...

2018-05-08 12:23:21

阅读数:25

评论数:0

C++继承的各种模型

首先我们需要知道 如果继承中涉及虚函数 ,就会从在虚表,所谓的虚表就是存储虚函数地址的表格。子类继承的话,子类自己的函数会重写所有父类的满足条件的所有函数,其余的虚函数会保存在第一个父类的虚表中。 如果是虚拟继承的话,在菱形继承的条件下,防止的是数据的冗余,最顶层的父类的内容会保存在模型的最底...

2017-11-30 09:00:35

阅读数:151

评论数:0

算法—直接插入排序

直接插入排序算法的思想: 我们要把一个数插入到已经有序的数据中,选取待排序的无序数据中的第一个数据,看做为一个已经有序的数列,然后依次将其余无序数据插入到这个有序的数列中。#include<iostream> using namespace std;struct Greater { ...

2017-11-20 13:45:08

阅读数:100

评论数:0

数据结构—位图

在计算机中,每一个数据都是以二进制0/1来保存,每一个字节byte包括8个bit,每一个bit存储一个0/1的信息。 一 .为什么使用位图我们可以通过对每一个bit位的操作来标识一些信息,比如当当前bit为0时,表示不存在,当当前bit为1时,表示存在。 而位图正是利用每一个bit位能标识...

2017-11-14 11:41:55

阅读数:141

评论数:0

数据结构—开散列哈希算法

哈希表在插入和查找拥有好高的效率,当数据足够的多时,相比于平衡树,效率几乎是平衡树的两倍。 开散列哈希具有的优势就是,哈希表中存放着链表的地址,每个进来的数据通过哈希函数求得位置,存放在相应位置的链表中。查找数据时,只需要查找该数据通过哈希函数求得的位置下的链表中是否存在,就能高效的完成查找;插...

2017-11-12 20:50:38

阅读数:192

评论数:0

数据结构—Hashtable(闭散列)

哈希表是常见数据结构中一种拥有高效插入,高效查找的结构,时间复杂度为O(1)。闭散列哈希的不足之处就是随着冲突的数据增多,插入的效率也会随之变慢,为了优化闭散列哈希的效率,我们可以采取以下的方式:>1.当插入的数据占总大小的一定比率的时候,也称负载因子,我们可以对哈希表进行扩容,重新通过哈希...

2017-11-08 19:57:05

阅读数:269

评论数:0

C++—string类写实拷贝的实现

>1.本次实现string为写实拷贝版本,参照new[]的形式,我们每次实现申请空间时,多在前面开辟4个字节来存放我们的引用计数,所谓的引用计数就是记录当前空间有多少对象在使用。也就是浅拷贝的形式。>2.为了完善string的实现,我们在不进行修改当前空间时,多个对象可以对公用的空间读...

2017-11-07 16:30:00

阅读数:118

评论数:0

C++—String类接口的实现

对c++string库部分接口的实现,通过接口间的复用,使个个接口紧密联系,更加简洁。 重要接口Expand()通过检测当前对象容量是否满足要求,对对象进行扩容等操作。 此次实现string全部使用的是深拷贝。#include<iostream> #include<strin...

2017-11-07 16:04:24

阅读数:238

评论数:0

C++设计模式——单例模式

导论:上次在面试的时候,面试官问及设计模式中的单例模式,什么是单例模式。在我把单例模式原理及两种实现方法道出,他问了一个问题,什么情况使用单例模式。在熟悉理论,并没有在实际开发过程中使用,这个问题问死了我。闲暇之余,重新的将这种简单且重要的软件设计模式总结。单例模式:单例模式,是一种常用的软件设计...

2017-10-22 21:18:26

阅读数:173

评论数:0

常见的排序算法—冒泡排序

冒泡排序 冒泡排序算法的运作如下:(从后往前) >比较相邻的元素。如果第一个比第二个大,就交换他们两个。 >对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 >针对所有的元素重复以上的步骤,除了最后一个。 >持续每...

2017-10-22 20:17:30

阅读数:368

评论数:0

C++智能指针

某种情况下,我们完成了对空间的申请,程序某些问题或者异常的出现,对空间申请完成后并没及时的释放,导致内存泄漏。为此,出现了智能指针的概念,用过类的销毁时调用析构函数的特性,将智能指针封装成一个类,在指针销毁时,同时完成对其空间的释放。Auto_ptr Auto_ptr的缺陷是一个指针给其他指针进...

2017-10-16 19:13:41

阅读数:126

评论数:0

Thoughtworks——出租车

我看完题的大致思路是: ->首先读取文件,对读文件的没一行(一个车辆信息)进行解析,每一行的信息是一个车辆,所以我们要定义车辆信息的结构体,把所有的车辆信息保存在list中。->对于每一行的信息进行解读,简单实现字符串的解析。(这里也可以采用boost库中的split)->...

2017-10-15 23:10:39

阅读数:101

评论数:0

俄罗斯方块

Centos6.5 C语言 实现基本的功能,旋转,移动,满行消除等功能。/************************************************************************* > File Name: 9.c > Au...

2017-10-02 13:32:43

阅读数:101

评论数:0

Linux下的MP3播放程序

运行环境Centos 6.5/*********************************************************************** > File Name: mp3.c > Author: YangKun > Ma...

2017-10-01 23:10:44

阅读数:465

评论数:0

坚持自己喜欢的事情

从写第一篇博客的时候,我就走向了一天不归路。这么写,要么一篇也不写。 坚持的三个月以来,以前没得写,写一些自己学到的小的代码,写上去,到后面自己的知识总结,没总结一篇,然后知识就熟练的记忆了一遍,也从而能想到代码解决问题中出现的特例。 做一件事情贵在坚持,如果只是有新鲜感做几天就放弃,一点意思...

2017-09-24 20:16:47

阅读数:373

评论数:1

C++中的多态

在学习C++的时候,我们知道C++有三个重要的特性:封装,继承,多态。 那么,我们来看一下C++是怎么实现多态,以及多态实现的对象模型。所谓多态,其实就是“多种形态”。 C++中虚函数的主要作用就是实现多态。简单说父类的指针/引用调用重写的虚函数,当父类指针/引用指向父类对象时调用的是父类的虚...

2017-09-24 20:06:05

阅读数:134

评论数:0

C++中重载、重写、重定义

重载: 1>作用域相同。 2>函数名相同,参数列表不同。 3>与返回值无关。 例:同一个类的构造函数和拷贝构造函数构成重载。class A { A() {} A(const A& a) {} };重写(覆盖): 1>不在同一作...

2017-09-21 19:12:05

阅读数:91

评论数:0

单链表

单链表:它是一种链式存储的线性表,用一组地址任意的存储单元存放线性表 的数据元素,称存储单元为一个节点。单链表中的一个节点分为两个部分,一个存储数据的数据域,一个指向下一个节点的指针域。 单链表又分为无头节点的单链表和带头节点的单链表。 下面代码实现的是带头单链表template<cl...

2017-09-16 19:23:21

阅读数:100

评论数:0

数据结构——二叉树的创建和遍历

在学习数据结构中,除了我们学习的线性结构,还有一种特殊而且重要的树形结构。最常见的二叉树,二叉树的种类又有很多。 二叉树概念 二叉树:一棵二叉树是结点的一个有限集合,该集合或者为空,或者是由一个根节点加上两棵分别称为左子树和右子树的二叉树组成。 满二叉树:在一棵二叉树中,如果所有分支结点都存...

2017-09-14 17:14:58

阅读数:245

评论数:0

C++—String类

在C++中常见的一个面试题就是实现一个String类,在面试中我们需要实现的是String类基本的管理资源,能够拥有以下的功能: 1.能够定义变量,不能够赋值和复制等。 2.能够作为函数的参数和返回类型。 3.可以作为STL中容器的数据类型。其次我们需要知道,string类的基本成员函数,如...

2017-09-12 15:59:57

阅读数:109

评论数:0

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