自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 QT学习之做一个简易图片处理器(后续补全)

本博客是可以系统完备的学习Qt的笔记,本笔记仅涉及做一个图片查看编辑器所需的内容,准确来说是几个函数,作为了解需要。Qt的4个图像类:QImage、QPixmap、QBitmap、QPictureQPixmap是专门用来绘图,当需要绘制图片时需要使用QPixmap. QImage则是为I/O,当需要访问图片像素和修改时常用QImage.

2017-06-08 14:37:38 1250 1

原创 c++getline和get的区别

getline()和get()这两个函数都读取一行的输入,直到达到换行符。然而不同的是gerline()将丢弃换行符,而get()将换行符保留在输入序列中。(1)getline#include <iostream>using namespace std;const int SIZE = 15;int main(){ char name[SIZE]; char dessert[SI

2017-05-24 21:56:45 12748 2

原创 linux下cd 和cd /的区别

现在就说一下最常用的基本命令 linux cd,自己也是在入门学习的过程中因为不知道这两者的区别导致找不到之前自己创建的目录,吃了很多亏,记下来希望自己能记住这个小技巧,也希望更多的同学不要再吃亏上当! cd 和目录之间使用空格隔开cd 命令:切换当前目录至其他目录 cd /:加上斜杠表示是进入到根目录。 pwd命令:查看当前路径。下面是linux cd命令使用小技巧: (1)cd 进入用户

2017-05-23 21:36:12 28004 1

原创 编写makefile文件

在Makefile 文件中通常包含如下内容: 需要由make工具创建的目标体(target),通常是目标文件或可执行文件。 要创建的目标所依赖的文件 创建每个目标体时需要运行的命令。

2017-05-23 21:07:02 568

原创 gdb调试器基本使用方法(入门)程序如果已经宕掉如何调试

1、gdb调试器 linux下的gdb调试器,是一款GNU组织开发并发布的UNIX/Linux下的程序调试工具,他没有图形化的友好界面,但功能强大。 bt查看函数调用的栈空间 (1)list 查看指定位置的源代码,后可以跟行号(gdb) l 11 #include<iostream>2 #include<stdio.h>3 using namesp

2017-05-22 20:13:42 799

原创 c++代码重用之私有继承

在C++has-a关系中,还有一种实现途径叫—私有继承。 使用私有继承,基类的共有成员和保护成员都成派生类的私有成员,虽然基类方法因此不会成为派生对象共有接口的一部分,但可以在派生类的成员函数中使用它们。派生类不继承基类的接口。 1、初始化基类组件 隐式的继承组件而不是成员对象将影响代码的编写,例如Student(const char *str,const double *pd,int n)

2017-05-17 22:36:14 486

原创 静态联编和动态联编

1、什么是联编 将源代码中的函数调用解释为执行指定的函数代码块被称为函数名联编(binding) 2、什么是静态联编 因为每个函数名对应于一个不同的函数。在c++中由于函数重载。使得编译器必须查看函数参数以及函数名才能确定使用哪个函数,因此在编译过程中进行联编被称为静态联编(static binding)又称为早期联编(early binding) 3、什么是动态联编 当有虚函数存在时,使

2017-05-16 10:44:24 856

原创 多态公有继承的实现

1、什么是多态公有继承 希望同一个方法在派生类和基类中的行为是不同的,换句话说,方法的行为应取决于调用该方法的对象。这种较复杂的行为称为多态—-即具有多种形态。 2、如何实现多态 (1)在派生类中重新定义基类的方法 (2)使用虚方法virtual 对于第一种重新定义基类的方法可以参考上一篇博文派生类和基类的关系http://blog.csdn.net/vincentlmeng/articl

2017-05-15 22:03:54 645

原创 派生类和基类之间的关系

1、派生类对象可以使用基类的方法,条件是方法不是私有的RatedPlayer rplayer(1140,"Mallory","Duck",true);rplayer.Name();2、基类指针可以在不进行显示类型转换的情况下指向派生类对象 3、基类引用可以在不进行显式类型转换的情况下引用派生类对象RatedPlayer rplayer1(1140,"Mallory","Duck",true);

2017-05-15 16:35:32 2169

原创 Find All Anagrams in a String给定字符串s和非空字符串p,找出p中是s中点的所有子串

LeetCode438号问题。 问题描述:给定一个字符串s和一个非空字符串p,找出p中的所有是s的anagrams字符串的子串,返回这些子串的起始索引。 s=”cbaebabacd” p=”abc” 则返回的是[0,6] 位置0 cba,位置6 bac也就是不考虑顺序,只要这个子串包含P中的所有元素即可。 如s=”abab” p=”ba” 则返回的是[0,1,2] 注意点:字符集范围,英

2017-05-15 15:59:27 1095

原创 字符串中没有重复的字符最大子串

在一个字符串中寻找没有重复字母的最长子串。 如在“abcabcbb”则结果“abc”; “bbbbb”结果为“b” “pwwkew”结果为“wke” 需要考虑的点: 字符集,只有字母,数字+字母,或ASCII码 大小写是否敏感。 思路:采用双索引 l,r建立滑动窗口s[l…r]; 建立一个大小为256的数组,存放大小为字符值所在位置出现的次数,如“abbabcde” ‘a’97;

2017-05-11 11:38:46 1149

原创 数组中连续子数组和

1、LeetCode上209号问题给定一个整型数组s,找到数组中最短的一个连续子数组,使得连续子数组的数字和sum>=s,返回这个最短的连续子数组的返回值。 如-给定的数组[2,3,1,2,4,3] s=7; 答案为[4,3]返回的是2。#include <iostream>#include <cassert>#include <vector>#include<algorithm>usi

2017-05-11 10:33:05 1438

转载 PCA的数学原理

文章转自:http://blog.codinglabs.org/articles/pca-tutorial.html

2017-05-10 16:44:37 408

转载 C++中pair的使用方法

原:http://blog.csdn.net/oceanlight/article/details/7890537pair的类型: pair 是 一种模版类型。每个pair 可以存储两个值。这两种值无限制。也可以将自己写的struct的对象放进去。。 pair<string,int> p; pair<int ,int > p; pair<double,int> p;都可以

2017-05-06 21:06:43 820

转载 字符数组的定义和初始化

1、字符数组的定义与初始化 字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素。char str[10]={ 'I','','a','m','',‘h’,'a','p','p','y'};即把10个字符分别赋给str[0]到str[9]10个元素如果花括号中提供的字符个数大于数组长度,则按语法错误处理;若小于数组长度,则只将这些字符数组中前面那些元素,其余的元素自动定为空字符(即

2017-04-21 21:44:12 19984 1

原创 基类构造析构函数、子类构造析构函数和子类成员变量构造析构函数的调用顺序

首先看一个问题: 分析下面这个程序析构函数的调用顺序。class A { public: A() { } ~A() { cout<<"~A"<<endl; } }; class B:public A { public: B(A &a):_a(a) { }

2017-04-21 21:02:32 2038

转载 c++11新特性--auto的使用

C++11中引入的auto主要有两种用途:自动类型推断和返回值占位。auto在C++98中的标识临时变量的语义,由于使用极少且多余,在C++11中已被删除。前后两个标准的auto,完全是两个概念。 1. 自动类型推断 auto自动类型推断,用于从初始化表达式中推断出变量的数据类型。通过auto的自动类型推断,可以大大简化我们的编程工作。下面是一些使用auto的例子。[cpp] view

2017-04-21 15:57:05 454

原创 windows 10 下MySQL 5.7.18安装教程

一、 1、MySQL下载:http://www.mysql.com/进入页面Download Download MySQL Community Server 选择你想要的版本进行下载 这里我选择的是当前最新版本5.7.18下载MSI版本。点击download进入下一个页面根据你的系统版本选择合适的下载, 点击下一步页面会提示你注册Oracle账号,如果你嫌麻烦可以跳过注册这一步,点击左下角

2017-04-13 17:54:06 34804 33

原创 Tensorflow之创建我的第一个神经网络

用Tensorflow创建一个神经网络拟合y=0.1*x+0.3 IDE环境 spyder3 Tensorflow 是非常重视结构的,我们得建立好了神经网络的结构,才能将数字放进去运行这个结构 需要加载tensorflow和numpy两个模块并使用numpy来创建数据# -*- coding: utf-8 -*-"""Spyder EditorThis is a temporary sc

2017-04-11 10:26:26 1630

原创 二叉树遍历和相关知识

二叉树有几种遍历方式: 前序遍历:根左右 中序遍历:左根右 后序遍历:左右根 (a) 前序遍历:1 2 4 8 5 3 6 7 中序遍历:8 4 2 5 1 6 7 3 后序遍历:8 4 5 2 6 7 3 11、二叉树的深度。 输入一颗二叉树的根结点,求该树的深度。/* struct TreeNode { int val;

2017-03-27 21:15:02 335

原创 剑指offer:面试4从尾到头打印链表

通常打印是一个只读操作,我们不希望打印时修改内容,假设这个题目不能改变链表的结构。 利用栈的先进后出特点,遍历链表进栈,然后利用vector.push_back()从尾部插入节点,将栈顶的值依次插入到vector尾。最后返回vector就可以得到从尾到头的链表。 例如输入:1 2 3 4 5 输出:5 4 3 2 1 /*** struct ListNode {*

2017-03-25 10:56:01 284

原创 二维数组中的查找

题目:在一个数组中每一行都按照从左到右递增顺序排序,每一列按照从上到下的顺序排序。请完成一个函数,输入这样的二维数组和一个整数,判断数组中是否含有该整数。 思路: 1 2 8 9 2 4 9 12 4 7 10 13 6 8 11 15 这是一个已经排序好的数组,可以从右上角或者右下角开始查找。 分析所有可能出现的情况:

2017-03-24 10:36:10 291

原创 静态联编和动态联编虚函数

在《C++Primer Plus》第13章类继承中有过详细的说明。通常,编译器处理虚函数的方法是:给每一个对象添加一个隐藏成员。隐藏成员中保存了一个只想函数地址数组的指针。这种数组成为虚函数表(vtable)。虚函数表中存储了为类对象进行声明的虚函数的地址。例如基类对象包含一个指针,则该指针指向的是基类中所有虚函数的地址表。 派生类对象将包含一个指向独立地址表的指针。如果派生类为虚函数提供了新的定

2017-03-24 10:28:36 842

原创 C++中可以用struct和class来定义类型,这两种类型有什么区别

如果没有标明成员函数或者成员变量的的访问权限级别,在struct中默认的是public,而在class中默认的是private。 在C#中。struct和class有什么区别? C#和C++不一样,在C#中如果没有标明成员函数或者成员变量的访问权限级别,struct和class 都是private的。struct和class的区别是struct定义的是值类型,值类型的实例在栈上分配内存;而cla

2017-03-23 15:51:02 1825

转载 如何判断系统大端小端问题

端模式(Endian)的这个词出自Jonathan Swift书写的《格列佛游记》。这本书根据将鸡蛋敲开的方法不同将所有的人分为两类,从圆头开始将鸡蛋敲开的人被归为Big Endian,从尖头开始将鸡蛋敲开的人被归为Littile Endian。小人国的内战就源于吃鸡蛋时是究竟从大头(Big-Endian)敲开还是从小头(Little-Endian)敲开。在计算机业Big Endian和Little

2017-03-21 21:16:54 878

原创 图的遍历之广度优先搜索和深度优先搜索

广度优先搜索:从一个顶点开始,搜索所有可到达顶点的方法。利用队列的方法实现 深度优先搜索:从一个顶点出发,向下搜索,到达没有邻接点就向上返回。 下面给出代码:#include<iostream>#include<stack>#include<queue>#define MAX_VERTS 20using namespace std;class Vertex//顶点{publ

2017-03-20 22:35:32 618

原创 错误 1 error C2679: 二进制“<<”: 没有找到接受“void”类型的右操作数的运算符(或没有可接受的转换)

void Get(const Key & k) { for (size_t i = 0; i < currentSize; ++i) { if (arr[i].key == k) return arr[i].value; } return Value(); }在主程序

2017-03-20 10:16:13 14365

原创 修改MySql提示符

MySQL常用命令(1)显示当前服务器版本  SELECT VERSION((2)显示当前日期时间  SELECT NOW())(3) 显示当前用户 SELECT USER()MySQL语句的规范:关键字与函数名称全部大写数据库名称、表名称、字段名称全部小写SQL语句必须以分号结尾数据类型与创建数据表MySQL默认的端口号是多少? 3306MySQL中的

2017-03-12 10:57:52 816

转载 C++编程学习的经典网站,强烈推荐!

C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++源代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建议,以进一步加强这方面的清单。1、http://snippets.dzone.com/tag/c/ --数以千计的有用的C语言源代码片段2、http://

2017-03-11 16:52:45 2066

原创 数据结构与算法之---快速排序

1、快速排序是目前最快的排序算法,也是很多公司要求会写的一个排序算法快速排序的数组是a[0].....a[n-1],首先选取一个数据(选数组左边或者右边的数)作为枢轴,然后将左边第一个比它大(小)的数,和右边第一个比它小(大)的数交换,直到没有找到符合条件的值,使得枢轴换到两数中间,j=j-1;i=i+1;一趟快速排序的算法是:1)设置两个变量i、j,排序开始的时候:i=0,j=N

2017-03-06 15:02:46 596 1

翻译 c++重载、覆盖和隐藏

成员函数重载的特征:(1)相同的范围(在同一个类中)(2)函数名字相同;(3)参数不同;(4)virtual关键字可有可无;函数覆盖指的是派生类函数覆盖基类函数,(1)要求不同的范围(分别位于派生类与基类中);(2)函数名字要求相同;(3)参数要求相同;(4)基类和拿书必须有virtual关键字;隐藏是指派生类的函数屏蔽了与其同名的基类函数,规则如下:(

2017-03-02 20:14:27 411

原创 算法时间复杂度与空间复杂度

算法时间复杂度的定义:在进行算法分析使,语句总的执行次数T(n)是关于问题规模n的函数,进而分析T(n)随n 的变化请款并确定T(n)的数量级。算法的时间复杂度,也就是算法的时间量度,记作:T(n)=O(f(n))。他表示随问i中题规模n的增大,算法执行时间的增长率和f(n)的增长率相同,称作算法的监禁时间复杂度,简称为时间复杂度,关键知道执行次数=时间;我们三个求和算法的时间复杂度分别为

2017-03-02 10:25:17 657

原创 c++primer plus第五章编程练习

1.编写一个要求用户输入两个整数的程序,giant程序将计算并输出这两个整数之间(包括这两个整数)所有的整数的和。这里假设先输入较小的整数,例如如果用户输入的是2和9,则程序将指出2-9之间所有整数的和为44.#include using namespace std;int main(){ int x,y; cin>>x; cin>>y; int sum=

2017-01-11 21:19:03 3838 3

原创 c++primer plus 第六版第四章编程习题

Author:MengFrom : C++ Primer Plus第六版第四章编程练习 第1题   Problem : 编写一个C++程序,如下述输出示例所示的那样请求并显示信息:  What is your first name? Beety Sue  What is your last name? Yewe  What letter grade do you deserve? B  What

2017-01-09 11:20:37 3040 1

原创 c++第四章复习题

8.设计一个描述鱼的结构声明。结构中应当包括品种、重量(整数,单位为盎司)和长度(英寸、包括小数)。答:struct fish{ char kind[]; int weight; float length;};12、假设treacle是一个包含10个元素的float数组,请声明一个指向treacle的第一个元素的指针,并使用该指针来显示数组的第一个元

2017-01-08 21:29:32 891

原创 如何使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2017-01-08 20:35:33 393

原创 c++数据结构与算法分析一(各种排序算法以及优劣分析)

算法中最基本的便是查找和排序算法了,和几个已经找工作的师兄师姐交流,面试时经常会问到排序算法和相关的问题。经常有面试官要求现场写出一种排序算法的代码。如果我们说我们会冒泡算法,,未免显得有些low,所以今天就想总结一些常用的排序算法,以及代码实现。一、冒泡排序。     虽然冒泡排序是大学学过的最简单的排序之一,但是如果你真的想不起来你会什么排序算法,拿冒泡排序来救场也是ok的。而且算法的

2016-12-14 21:39:53 1170

空空如也

空空如也

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

TA关注的人

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