自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 图算法(待写)

图的最小生成树Prim算法Kruskal算法有向无环图拓扑排序(AOV-网,Activity On Edge)关键路径(AOV-网,Activity On Vertex)有向图的最短路径Dijkstra算法Floyd算法

2017-03-30 17:49:51 324

原创 各种树(待写)

二叉搜索树二叉平衡树B树、B+树红黑树败者树堆与堆排序

2017-03-30 17:26:45 259

转载 方向导数与梯度

方向导数与梯度 一、方向导数现在我们来讨论函数在一点沿某一方向的变化率问题.定义 设函数在点的某一邻域内有定义.自点引射线.设轴正向到射线的转角为(逆时针方向:0;顺时针方向:0),并设'(+△,+△)为上的另一点且'∈.我们考虑函数的增量(+△,+△)-与、'两点间的距离的比值.当'沿着趋于时,如果这个比的极限存在,则称这极限为函数在点沿方向的方向导数,记作,即   

2017-03-29 15:06:40 13526 1

转载 L0/L1/L2范数

L0/L1/L2范数的联系与区别标签(空格分隔): 机器学习最近快被各大公司的笔试题淹没了,其中有一道题是从贝叶斯先验,优化等各个方面比较L0、L1、L2范数的联系与区别。L0范数L0范数表示向量中非零元素的个数:||x||0=#(i) with  xi≠0||x||0=#(i) with  xi≠0也就是如果我们使用L0范数,即希望w的大部分元素都

2017-03-29 14:24:06 436

原创 统计学习方法

三要素模型 确定模型和假设空间策略 定义经验损失函数,并将损失函数最小化过拟合问题解决过拟合问题的方法:可以使用正则化方法,在损失函数中加入正则化项,从而使用结构风险最小化,来避免过拟合。还可以增加实验样本数量,当实验样本数量足够大的时候,在一定程度上也可以避免出现过拟合的情况发生

2017-03-29 14:22:41 258

转载 深入理解C++浮点数(float、double)类型数据比较、相等判断

浮点数在内存中的存储机制和整型数不同,其有舍入误差,在计算机中用近似表示任意某个实数。具体的说,这个实数由一个整数或定点数(即尾数)乘以某个基数(计算机中通常是2)的整数次幂得到,这种表示方法类似于基数为10的科学记数法。所以浮点数在运算过程中通常伴随着因为无法精确表示而进行的近似或舍入。但是这种设计的好处是可以在固定的长度上存储更大范围的数。 1、将字符串转换为float、double过程存在精

2017-03-28 16:39:55 7998

原创 C++数组和指针

可以认为数组名是一个地址常量,不能修改,不能作为左值进行赋值。 因此不能将一个数组赋给另一个数组:int a[10] = {1};int b[10];b = a;//错误在C++中向cout传递一个非字符地址,cout将输出地址;但是如果传递的是字符地址,cout将输出该地址处的字符串(遇到‘\0’停止)。char str1[] = "hello";char str2[] = "hell

2017-03-28 13:38:34 362

转载 C++虚函数原理

1. 概述简单地说,每一个含有虚函数(无论是其本身的,还是继承而来的)的类都至少有一个与之对应的虚函数表,其中存放着该类所有的虚函数对应的函数指针。例:其中:B的虚函数表中存放着B::foo和B::bar两个函数指针。D的虚函数表中存放的既有继承自B的虚函数B::foo,又有重写(override)了基类虚函数B::bar的D::bar,还有新增的虚函数D::quz。

2017-03-27 21:11:00 287

转载 C++深入虚表结构

1. 虚表与“虚函数表”在“C/C++杂记:虚函数的实现的基本原理”一文中曾提到“虚函数表”的概念,只是为了便于理解,事实是:虚函数表并不真的独立存在,它只是虚表(virtual table)中的一部分内容。例:从图中可已看出,虚表除了包含虚函数指针,还包含其它一些信息(如:RTTI信息、偏移值等)。顺便介绍一下gcc的-fdump-class-hierarchy选项,

2017-03-27 21:05:11 735

转载 C++实现多态的内部实现原理RTTI

运行时类型识别(RTTI)的引入有三个作用:配合typeid操作符的实现;实现异常处理中catch的匹配过程;实现动态类型转换dynamic_cast。1. typeid操作符的实现1.1. 静态类型的情形C++中支持使用typeid关键字获取对象类型信息,它的返回值类型是const std::type_info&,例:#include #include s

2017-03-27 20:51:37 466

原创 类成员的三种访问属性

在一个类中,有三种不同访问属性的成员:public、protected、private。在类的内部(类的声明和类的定义)可以访问public、protected、private所有成员 在类的外部(对象和其他函数)不能访问private和protected成员在继承中的三种不同的派生方式,对派生类对基类成员的访问属性得改变:public: public ->public; protecte

2017-03-27 10:35:38 18569 2

原创 字符串反转方法

方法一使用STL标准库函数reverse();template<class BidirectionalIterator> void reverse( BidirectionalIterator _First, BidirectionalIterator _Last );_First 在元素交换的范围,双向迭代器指向第一个元素的位置_Last 在元素交换

2017-03-24 22:26:33 371

原创 C++ 整形和字符串之间的转换

方法一使用ANSI C 中的sprintf();和sscanf();函数。格式化符号%%打印出%符号不进行转换。%c 整数转成对应的 ASCII 字元。%d 整数转成十进位。%f 倍精确度数字转成浮点数。%o 整数转成八进位。%s 整数转成字符串。%x 整数转成小写十六进位。%X 整数转成大写十六进位。%n sscanf(str, “%d%n”, &dig, &n),%n表示一共转

2017-03-24 22:12:28 33730 1

原创 存储顺序

小端存储格式:字数据的低字节存储在低地址中,高字节存储在高地址中。 大端存储格式:字数据的高字节存储在低地址中,低字节存储在高地址中。小端存储和大端存储的区别是字中的字节的存储顺序不同,而字与字之间的存储顺序是相同的。(在这里不太理解字的概念,后面明白了会加进来)栈地址的增长顺序:从高地址向低地址增长,空间较小(固定可变) 堆地址的增长顺序:从低地址向高地址增长,空间很大(可以认为是所有可用空闲

2017-03-20 15:17:32 2343 1

转载 struct 和 class

首先,讨论这个问题应该仅从语法上讨论,如果讨论不同人之间编程风格上的差异,那这个问题是没有答案的。毕竟不同的人偏好不同。从语法上,在C++中(只讨论C++中)。class和struct做类型定义时只有两点区别:默认继承权限。如果不明确指定,来自class的继承按照private继承处理,来自struct的继承按照public继承处理;成员的默认访问权限。class的成员默认是private权限,

2017-03-20 10:06:31 287

原创 素数及其使用

素数质数(prime number)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数。计算n以内的所有素数的方法ref:http://www.cnblogs.com/hardsoftware/p/5935850.html ★题目  好,言归正传。下面俺就由浅入深,从各种角度来剖析这道题目的奥妙。   为了避免被人指责为”玩文字游戏”(有些同学自己审题

2017-03-19 20:12:36 1923

原创 数字字符串问题

大数相乘题目描述:输入两个很大的正数(用c字符串表示),输出他们的乘积。 采用的方法可以模拟手工乘法关键步骤void multiply(const char *a,const char *b){ if (a == NULL&&b == NULL)return; int i, j, ca, cb, *s; ca = strlen(a); cb = strlen(b);

2017-03-18 23:02:11 353

原创 KMP算法

KMP算法理解设模式串为pattern[0,1,2…p-1]核心思想找到模式子串pattern[0,1,2…k-1]的真后缀同时也是pattern[0,1,2…p-1]的最大前缀的长度(pattern的总长度是p,0<=k<=p),存入pi数组。利用pi数组来避免模式串和主串的不必要的比较,提高效率 KMP算法C++代码#include <iostream>#include <string>

2017-03-18 20:40:34 230

原创 C++杂记

整形按照宽度从小到大,char, short, int , long内存分区堆 栈 全局(静态)存储区 文字常量区 程序代码区数组初始化

2017-03-17 15:13:56 312

原创

图的表示有两种方法:邻接表和邻接矩阵,下面分别是无向图和有向图的两种表示方法,均来自算法导论 图的遍历分为广度优先遍历和深度优先遍历下面分别就两种方法给出伪代码和c++代码,其中图的存储使用邻接矩阵存储。广度优先遍历伪代码 C++代码#include <iostream>#include <queue>using namespace std;#define N 6 queue<i

2017-03-14 15:07:47 228

转载 并查集

并查集是我暑假从高手那里学到的一招,觉得真是太精妙的设计了。以前我无法解决的一类问题竟然可以用如此简单高效的方法搞定。不分享出来真是对不起party了。(party:我靠,关我嘛事啊?我跟你很熟么?)来看一个实例,杭电1232畅通工程首先在地图上给你若干个城镇,这些城镇都可以看作点,然后告诉你哪些对城镇之间是有道路直接相连的。最后要解决的是整幅图的连通性问题。比如随意给你两个点

2017-03-13 21:39:14 161

转载 递归

递归深入理解递归最重要的一点就是假设子问题已经解决了,现在要基于已经解决的子问题来解决当前问题。 递归之所以把问题变简单了,是因为相当于多给你了一个前提条件(尽管是假设的)。大家都知道,递归的本质和栈数据的存取很相似了,都是先进去,但是往往最后处理!再者对于递归函数的局部变量的存储是按照栈的方式去存的,对于每一层的递归函数在栈中都保存了本层函数的局部变量,一边该层递归函数结束时能够保存原来该层的数

2017-03-13 19:54:11 425

原创 二叉树

遍历方法二叉树的结构struct BintreeNode{ int data; BiTreeNode* lchild; BiTreeNode* rchild;}递归遍历先序遍历int PreOrderTraverse(BintreeNode){ if(T == NULL)return 0; Visit(T->data); PreOrderTr

2017-03-13 16:20:56 216

转载 catalan数 出栈序列

1.饭后,姐姐洗碗,妹妹把姐姐洗过的碗一个一个地放进碗橱摞成一摞。一共有n个不同的碗,洗前也是摞成一摞的,也许因为小妹贪玩而使碗拿进碗橱不及时,姐姐则把洗过的碗摞在旁边,问:小妹摞起的碗有多少种可能的方式?2.给定n个数,有多少种出栈序列?3.一个有n个1和n个-1组成的字串,且前k个数的和均不小于0,那这种字串的总数为多少? 这三个问题具有相同的结构,三个问题是可

2017-03-12 21:50:32 4586

原创 string

得到一个比已知字符前面或者后面的字符的方法:char('b'-1);//可以得到a

2017-03-10 10:45:58 73

原创 Lucky String

题目题目描述 A string s is LUCKY if and only if the number of different characters in s is a fibonacci number. Given a string consisting of only lower case letters , output all its lucky non-empty substring

2017-03-09 17:04:02 448

转载 STL

STL底层数据结构实现C++ STL 的实现:vector 底层数据结构为数组 ,支持快速随机访问list 底层数据结构为双向链表,支持快速增删deque 底层数据结构为一个中央控制器和多个缓冲区,详细见STL源码剖析P146,支持首尾(中间不能)快速增删,也支持随机访问 deque是一个双端队列(double-ended queue),也是在堆中

2017-03-09 11:32:45 343

原创 处理二进制

题目描述世界上有10种人,一种懂二进制,一种不懂。那么你知道两个int32整数m和n的二进制表达,有多少个位(bit)不同么?答案class Solution {public: /** * 获得两个整形二进制表达位数不同的数量 * * @param m 整数m * @param n 整数n * @return 整型 */

2017-03-08 14:43:30 278

空空如也

空空如也

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

TA关注的人

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