摘要:1.bitsset 模板,可以操作二进制字符串,转化成数字等 2.swap()交换函数,将a,b的值交换 3.stringstream类用于字符串和其他类型的转换,操作方便 4.stx,tr1. 5.max_element(x,x+i)algorithm.h,参数是迭代器,就是两个指针。 6.rev
阅读全文
摘要:目录(?)[+] C++中一般创建对象,拷贝或赋值的方式有构造函数,拷贝构造函数,赋值函数这三种方法。下面就详细比较下三者之间的区别以及它们的具体实现 1.构造函数 构造函数是一种特殊的类成员函数,是当创建一个类的对象时,它被调用来对类的数据成员进行初始化和分配内存。(构造函数的命名必须和类名完全相
阅读全文
摘要:转:http://blog.csdn.net/liu1194397014/article/details/52766760(有空转发)
阅读全文
摘要:1 教科书里的单例模式 我们都很清楚一个简单的单例模式该怎样去实现:构造函数声明为private或protect防止被外部函数实例化,内部保存一个private static的类指针保存唯一的实例,实例的动作由一个public的类方法代劳,该方法也返回单例类唯一的实例。 上代码: 1 2 3 4 5
阅读全文
摘要:https://www.cnblogs.com/lanxuezaipiao/p/4132096.html http://blog.csdn.net/yc2zgh1314/article/details/51264963 https://www.cnblogs.com/benxintuzi/p/485
阅读全文
摘要:1.给出一个规则,求出所有的结果,比如生成一个字符串等等,看似是暴力遍历的问题; 2.组合数学选择问题,从10个数中选择6个数,这个东西怎么生成呢,(10 6),用程序如何生成结果,从前到后 3.八皇后问题;在规定的地方选择位置,不冲突的位置,如何生成,肯定是循环遍历,或者不规则的只能一种情况一种的
阅读全文
摘要:《转发》:http://blog.csdn.net/xmu_jupiter/article/details/50889023 Orange先生 (一定请移步这个网址)。 高斯混合模型GMM是一个非常基础并且应用很广的模型。对于它的透彻理解非常重要。网上的关于GMM的大多资料介绍都是大段公式,而且符号
阅读全文
摘要:http://blog.csdn.net/lovecodeless/article/details/24929273 http://blog.csdn.net/Jiangweihll/article/list/1 过后总结
阅读全文
摘要:#include #include #include //定义了stringstream类 using namespace std; int main() { stringstream s;//真的好用,很方便的操作字符串增加转化等; string sr="1234"; s>a; cout<<a;//1234100 return 0; }
阅读全文
摘要:void function(type& result/*结果写在参数里*/type var/*存储需要用到的值*/type& var1/*结果*/)
阅读全文
摘要:海量数据问题:数据量很大,无法直接用有限的内存存储,也就是无法一次性通过排序等处理数据。 Hash:hash本质上是一种映射函数,将键值映射为一个数值(存储位置)。查找的话当然键值冲突越少越好,但如果只是单纯的分成小文件,只要保证相同的数据在同一组,冲不冲突也无所谓。 hash_map/hash_s
阅读全文
摘要:摘抄:https://zhuanlan.zhihu.com/p/25928551(原文地址) 一.传统文本分类 1)文本预处理 文本预处理过程是在文本中提取关键词表示文本的过程,中文文本处理中主要包括文本分词和去停用词两个阶段。 2)文本表示和特征提取 文本表示: 传统做法常用词袋模型(BOW, B
阅读全文
摘要:提升树:提升方法采用加法模型(基函数的线性组合)与前向分布算法,以决策树为基函数的提升方法为提升树。 对于一般的回归树,采用平方误差损失函数,这时根据前向分布每次只需要达到最优化,就能保证整体上的优化。由于平方误差的特殊性,可以推导出每次只需要拟合残差(真实值-预测值)。 梯度提升树:而对于其他损失
阅读全文
摘要:转载:http://blog.csdn.net/u012162613/article/details/44261657(请移步原文) 正则化方法:防止过拟合,提高泛化能力 在训练数据不够多时,或者overtraining时,常常会导致overfitting(过拟合)。其直观的表现如下图所示,随着训练
阅读全文
摘要:转发:http://blog.csdn.net/neiloid/article/details/6934135 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是
阅读全文
摘要:原文地址 :http://blog.csdn.net/niushuai666/article/details/6662911 作者:飘过的小牛 这篇地址:http://blog.csdn.net/dellaserss/article/details/7724401 来看一个实例,杭电1232畅通工程
阅读全文
摘要:根据序列在容器中的排列特性,将常见数据结构分为:序列式容器和关联式容器。 常见序列式容器有 1.array(build-in)c++內建 2.vector 3.heap(以算法方式呈现) 4.priority-queue(优先级队列) 5.list 6.slist 7.deque 8.adapter
阅读全文
摘要:1.python是解释型语言,而c,c++等是编译型语言。 2.python是动态类型语言,这意味着你不需要在声明变量时指定类型。 3.Python是面向对象语言,所有允许定义类并且可以继承和组合。Python没有访问访问标识如在C++中的public, private。 python内存管理: 从
阅读全文
摘要:常见的: 1.梯度下降:全批度下降,随机梯度下降(SGD),小批量梯度下降(batch SGD) 2.牛顿法:优化函数的二阶导数信息,海森矩阵求解困难,还有海森矩阵的逆。 3.拟牛顿法:拟牛顿法的本质思想是改善牛顿法每次需要求解复杂的Hessian矩阵的逆矩阵的缺陷,它使用正定矩阵来近似Hessia
阅读全文
摘要:注意几点: 1.梯度和方向导数有很大关系。 2.梯度的定义:梯度的本意是一个向量(矢量),表示某一函数在该点处的方向导数沿着该方向取得最大值,即函数在该点处沿着该方向(此梯度的方向)变化最快,变化率最大(为该梯度的模)。(最大方向导数的方向和最大方向导数的模)。 3.方向导数的定义:在函数定义域的内
阅读全文
摘要:1) 最大似然估计 MLE 给定一堆数据,假如我们知道它是从某一种分布中随机取出来的,可是我们并不知道这个分布具体的参,即“模型已定,参数未知”。例如,我们知道这个分布是正态分布,但是不知道均值和方差;或者是二项分布,但是不知道均值。 最大似然估计(MLE,Maximum Likelihood Es
阅读全文
摘要:在网上看到这个题,觉得很有意思,也算是一种方法。。。但是复杂度同样很高,生成全排列本身需要很大复杂度。 题目:现在有 a 到 z 26 个元素, 编写程序打印 a 到 z 中任取 3 个元素的组合(比如 打印 a b c ,d y z等) 分析: 大家看看我这么做行不 问题1:不可能出现 bac等。
阅读全文
摘要:转:https://www.cnblogs.com/ooon/p/5677098.html
阅读全文
摘要:转发:https://www.cnblogs.com/wxquare/p/5858008.html 1.熵与最大熵原理 熵是随机变量不确定性的度量,不确定性越大,熵值就越大;若随机变量退化成定值,熵为0。均匀分布是“最不确定”的分布 假设离散随机变量X的概率分布为P(x),则其熵为: 联合熵和条件熵
阅读全文
摘要:最大熵模型总结 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 摘要 本文对最大熵模型进行了系统性的学习和总结,从不同的角度来解读熵的概念以及最大熵的内涵。对最大熵的具体应用进行了梳理,并介绍了与最大熵相关的一些概念,最后通过一个简单的demo来对最大熵模型
阅读全文
摘要:1.在今日头条的编程题里遇到,起初的想法复杂了,使用分治算法做,但是感觉数据结构方面很难处理,不是线性时间,O(nlogn)。 2.在网上看到的方法使用了排序算法,虽然排序算法时间复杂度为o(nlogn),但是后面的生成步骤为O(n). 3.看图,极大值点有这些特点,前面的y值比后面的Y值大,所以将
阅读全文
摘要:对于排列a[1...n],找到所有满足a[k]<a[k+1](0<k<n-1)的k的最大值,如果这样的k不存在,则说明当前排列已经是a的所有排列中字典序最大者,所有排列输出完毕。 在a[k+1...n]中,寻找满足这样条件的元素l,使得在所有a[l]>a[k]的元素中,a[l]取得最小值。也就是说a
阅读全文
摘要:注意: 1.归并排序在待排数组上进行,但也需要辅助空间先将左右排序好的保留下来,再重新映射到原数组,为O(n)。 2.总的时间为O(nlogn)。
阅读全文
摘要:需要严格注意的几点: 1.如果选择左边元素,则开始从又右向左选取比这个数小的(不是小于等于的)交换 2.然后从左到右选择比这个元素大的,交换 3。每次都要判断左边的索引是否小于右边的索引,直到相等,还要注意这个元素要到指定的位置,因为此时左边索引和右边相等,所以使用哪个都可以了。 4.然后进行递归处
阅读全文
摘要:作者:严林链接:https://www.zhihu.com/question/31989952/answer/54184582来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 以下内容来源于跟几位大牛交流的结果并加入了一定自己的理解。 在工业界,很少直接将连续值作为逻辑
阅读全文
摘要:转发:http://blog.csdn.net/zbc1090549839/article/details/44103801(请移步原文) 机器学习、数据挖掘工作中,数据前期准备、数据预处理过程、特征提取等几个步骤几乎要花费数据工程师一半的工作时间。同时,数据预处理的效果也直接影响了后续模型能否有效
阅读全文
摘要:转发:http://blog.csdn.net/mingtian715/article/details/53789487请移步原文 内容参见stanford课程《机器学习》 对于已建立的某一机器学习模型来说,不论是对训练数据欠拟合或是过拟合都不是我们想要的,因此应该有一种合理的诊断方法。 偏差和方差
阅读全文
摘要:今天做了一道编程题,仔细检查了算法并没有错误,但是结果显示时间超时,但仍有80%的案例通过了,很奇怪。 通过将cin换成scanf,cout换成printf结果AC,实验发现二者性能差了很多,在输出100000个数时,时间几乎翻倍了。
阅读全文
摘要:转发http://www.cnblogs.com/maybe2030/p/4719267.html (请转步这个网站,写得非常好)
阅读全文
摘要:Bagging和Boosting都是将已有的分类或回归算法通过一定方式组合起来,形成一个性能更加强大的分类器,更准确的说这是一种分类算法的组装方法。即将弱分类器组装成强分类器的方法。 首先介绍Bootstraping,即自助法:它是一种有放回的抽样方法(可能抽到重复的样本)。 1、Bagging (
阅读全文
摘要:res.substr(res.find_first_not_of(' '),res.find_last_not_of(' ') + 1)
阅读全文
摘要:1、如果要将string转换为char*,可以使用string提供的函数c_str() ,或是函数data(),data除了返回字符串内容外,不附加结束符'\0',而c_str()返回一个以‘\0’结尾的字符数组。2、const char *c_str();c_str()函数返回一个指向正规C字符串
阅读全文