
C/C++
文章平均质量分 76
ynztpwy
这个作者很懒,什么都没留下…
展开
-
关于C++在堆中建立二维数组的问提及二维数组的使用常识
一.int[][]和int **的区别: 相当明显,int[][]是连续的空间!而int**a是半连续的,即不同的行是不连续的,但是同一列是连续的 所以:在参数传递时候,二者不可互传,即使是[][]传**,因为int** 和a[][]虽然传的都是地址,但是一个在栈空间连续,另一个在堆空间半连续! 而且int a[][num]的数据类型是int(*)[num]类型的,所以,int[][]之原创 2015-04-16 12:34:18 · 684 阅读 · 0 评论 -
决策树ID3算法C++代码及测试用例(bug版)
有bug,一直未找到,闲暇下来在看看,存一档 输入格式 首先为正整数n、m,分别代表特征个数、训练样本个数。 随后为m行,每行有n+1个整数。其中(1 在后续的m行中,每行代表一个样本中的n个整数特征值( )与样本的实际观测结果y(整数)。其中 。 输出格式 决策树的前序遍历结果,若是一个内部节点则输出inner(特征id),若是一个叶节点,则输出leaf(特征id)。原创 2015-05-04 16:40:46 · 1055 阅读 · 0 评论 -
用熵的决策树问题ID3和C4.5,C5.0简单介绍
用熵决策树问题的最基本思想: 我们一般可以通过信息熵来描述分类的混乱程度,如果标注的种类繁杂,说明信息非常混乱,如果标注就只有一种,或者大部分标注相同,那么说明这个数据集的信息比较整齐。用熵决策树的基本思想就是通过不断的划分数据集(通过用特征细化),是的信息熵尽量变小,也就是所谓的增大信息增益。通过不同的特征值来划分数据集,得到的信息增益是肯定不同的,熵决策树的目标就是找出最优的划分方法原创 2015-05-04 16:49:16 · 1981 阅读 · 0 评论 -
c++实现logistic回归代码
测试题目: 代码如下: #include #include #include #include #include #include using namespace std; double hypothesis(vector &feature,vector&w){ double sum=0.0; for(int i=0;i<feature.size();i++){原创 2015-05-20 16:03:08 · 4699 阅读 · 2 评论 -
神经网络和BP算法C及python代码
以上仅给出了代码。具体BP实现原理及神经网络相关知识请见:神经网络和反向传播算法推导 首先是前向传播的计算: 输入: 首先为正整数 n、m、p、t,分别代表特征个数、训练样本个数、隐藏层神经元个数、输出 层神经元个数。其中(1 随后为 m 行,每行有 n+1 个整数。每行代表一个样本中的 n 个特征值 (x 1 , x 2 ,..., x n ) 与样本的 实际观测结果 y。特原创 2015-06-08 10:49:47 · 5708 阅读 · 1 评论 -
const,static,全局变量细节及其区别
const: 限制符号,限制某个变量所指向的内容不能通过这个对象修改。 但是可以通过其他的修改,比如: int main(){ int x=5; const int &y=x; x++; cout<<y<<" "<<x; return 0; } 结果如下: 但是如果这样就通不过编译了 所以,const的作用是限制申明出来的变量的权限,所以我们有这原创 2015-05-22 15:33:11 · 4031 阅读 · 0 评论 -
C++代码实现梯度下降算法并给出测试用例
此处仅给出代码实现,具体原理及过程请看前面的博文 测试文件输入格式如下: 2 10 0.01 10 2104 3 399900 1600 3 329900 2400 3 369000 1416 2 232000 3000 4 539900 1985 4 299900 1534 3 31490原创 2015-04-24 15:09:54 · 11855 阅读 · 2 评论