自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 d-heap的子节点与父节点关系

D-heap就是D叉堆,也就是说有d个子节点的堆如何确定第i个节点的子节点和父节点的序号呢?我们不妨假设第一个节点就是1,那么第一个子节点就是1*d-d+2(即2),最后一个子节点就i*d+1(d+1个)显然,我们假设的1对于子节点的推断没有影响,那么对于第i个节点,它的第一个子节点就是i*d-d+1,最后一个子节点就i*d+1如果求父节点呢?根据子节点的关系,我们能发现,如果直接

2016-10-29 13:15:28 3196

原创 关于complete binary tree的节点

如果给定完全二叉树的节点个数,能不能求完全二叉树的叶子节点个数?设总节点个数为n,度为1的节点个数为n1,度为0为n0,度为2为n2那么n=n0+n1+n2 (1)对于完全二叉树n1=0;或者n1=1;又对于每个度为2的节点,它都有2个子节点,所以又有总的节点个数是(从每个节点的子节点来考虑)n=2*n2+1+n1 (2)(其中的1是根节点,这种算法相当于从

2016-10-29 12:57:24 387

转载 建立堆复杂度On,均摊思想

来源:http://blog.csdn.net/u011602557/article/details/51168384算法(3) 版权声明:本文为博主原创文章,未经博主允许不得转载。二叉堆是基于数组的数据结构,由在数组上定义的left() right() parent()操作,以及heapsize属性,可以把它视为二叉树。  如图,根节点有两

2016-10-29 11:26:46 2721

原创 二叉搜索树的插入和删除

插入:比较简单,只需要确认这个元素是否在二叉树中存在T Insert(Tree T,int Element){ if(!T){ T=(Tree)malloc(sizeof(***)); T->data = Element; T->Left=T->Right=NULL; return T; } if(Element data){ Insert(T->Left,Eleme

2016-10-29 10:50:46 308

转载 知乎 SVM图解

作者:简之链接:https://www.zhihu.com/question/21094489/answer/86273196来源:知乎著作权归作者所有,转载请联系作者获得授权。正好最近自己学习机器学习,看到reddit上 Please explain Support Vector Machines (SVM) like I am a 5 year old 的帖子,一个字赞

2016-10-23 20:22:50 4222 2

转载 知乎 bp算法

作者:匿名用户链接:https://www.zhihu.com/question/27239198/answer/89853077来源:知乎著作权归作者所有,转载请联系作者获得授权。BackPropagation算法是多层神经网络的训练中举足轻重的算法。简单的理解,它的确就是复合函数的链式法则,但其在实际运算中的意义比链式法则要大的多。要回答题主这个问题“如何直观的解释

2016-10-23 18:48:56 2126

转载 一文弄懂神经网络中的反向传播法——BackPropagation

来源:http://www.cnblogs.com/charlotte77/p/5629865.html 最近在看深度学习的东西,一开始看的吴恩达的UFLDL教程,有中文版就直接看了,后来发现有些地方总是不是很明确,又去看英文版,然后又找了些资料看,才发现,中文版的译者在翻译的时候会对省略的公式推导过程进行补充,但是补充的又是错的,难怪觉得有问题。反向传播法其实是神经网络的基础了,但是很多

2016-10-23 16:17:53 1312

原创 求树的高度

int max_height;void Depth(BinTree T,int depth){ if(T){ if(T->Left) Depth(T->Left,depth+1); if(T->Right) Depth(T->Right,depth+1); } if(depth>max_height){ max_height = depth; }}

2016-10-22 11:16:15 412

转载 线索二叉树

来源:http://blog.csdn.net/u014492609/article/details/40477795一、线索二叉树的原理    通过考察各种二叉链表,不管儿叉树的形态如何,空链域的个数总是多过非空链域的个数。准确的说,n各结点的二叉链表共有2n个链域,非空链域为n-1个,但其中的空链域却有n+1个。如下图所示。    因此,提出了一种方法,利用

2016-10-22 10:18:01 534

转载 矩阵求导

矩阵求导好像读书的时候都没学过,因为讲矩阵的课程上不讲求导,讲求导的课又不提矩阵。如果从事机器学习方面的工作,那就一定会遇到矩阵求导的东西。维基百科上:http://en.wikipedia.org/wiki/Matrix_calculus , 根据Y与X的不同类型(实值,向量,矩阵),给出了具体的求导公式,以及一堆相关的公式,查起来都费劲。其实在实际的机器学习工作中,最常

2016-10-16 11:40:46 484

原创 pta甲级 43 Tree Traversals Again

An inorder binary tree traversal can be implemented in a non-recursive way with a stack. For example, suppose that when a 6-node binary tree (with the keys numbered from 1 to 6) is traversed, the stac

2016-10-15 15:28:53 692

原创 二叉树遍历方式的转化(递归写法)

大家都知道二叉树已知中序遍历和后序遍历可以求前序遍历已知前序遍历和中序遍历可以求后序遍历,那么现在实现一下想法基本是利用递归,先找到根节点的位置,然后利用左右子树递归前序遍历+中序遍历 求 后序遍历:void dfs(char *inorder,char *preorder,int len){ if(len == 0) return ; int rootindex =

2016-10-15 15:19:25 743

转载 二叉树遍历非递归写法

来源:http://www.cnblogs.com/BaroC/p/5188545.html遍历的非递归实现是用栈来实现的,因为栈能提供先入后出。而对于层序遍历,由于需要遵循层的顺序,使用队列。1.先序遍历(中左右)初始化:根节点入栈。循环:出栈一个节点,访问这个节点,然后把这个节点的右子树,左子树入栈(由于栈先入后出,所以最后的顺序还是中-》左-》右)Push(T,s);

2016-10-15 12:41:19 334

原创 一个数组实现两个栈

// typedef struct StackRecord *Stack;// struct StackRecord {// int Capacity; /* maximum size of the stack array */// int Top1; /* top pointer for Stack 1 */// int Top2

2016-10-11 17:29:24 414

转载 递归算法的时间复杂度

关于算法估计:注意这个c是一个positive constants,可以由我们选择,但必须是常数第二个要注意的地方是:运用代入法的时候,我们必须要在结论中证明出和归纳假设严格一致的形式,比如我们假设T(n)=nlgn,那么我们最后必须要能证明出T(n)   【代入法】代入法首先要对这个问题的时间复杂度做出预测,然后将预测带入原来的递归方程,如果没有出现矛盾,则是可能的解,最

2016-10-06 13:48:25 774

转载 大牛文章:理解矩阵

来源:http://blog.csdn.net/myan/article/details/647511前不久chensh出于不可告人的目的,要充当老师,教别人线性代数。于是我被揪住就线性代数中一些务虚性的问题与他讨论了几次。很明显,chensh觉得,要让自己在讲线性代数的时候不被那位强势的学生认为是神经病,还是比较难的事情。可怜的chensh,谁让你趟这个地雷阵?!色令

2016-10-03 22:10:03 651

转载 python 学习之 用python做科学计算Numpy

官方文档http://old.sebug.net/paper/books/scipydoc/numpy_intro.html本文是官方文档的完全搬运,推荐直接查看官方文档  NumPy-快速处理数据标准安装的Python中用列表(list)保存一组值,可以用来当作数组使用,不过由于列表的元素可以是任何对象,因此列表中所保存的是对象的指针。这样为了保存一个简单的[1,2,

2016-10-02 22:55:07 3147

转载 python学习之 图片隐写术

原文来自https://www.shiyanlou.com/courses/651/labs/2121/documentclass bytearray([source[, encoding[, errors]]])返回一个新的字节数组。bytearray 类是一个关于整数的 mutable(可变)序列,范围为0 它包含了可变序列大部分的常用方法,参见 Mutable Seq

2016-10-02 16:00:47 3524

翻译 python 学习之 Pillow库

官方文档:https://pillow.readthedocs.io/en/3.3.x/handbook/tutorial.html#using-the-image-classThe most important class in the Python Imaging Library is the Image class, defined in the module with th

2016-10-02 10:20:48 4246

翻译 python 环境管理器pyenv 命令

写500 lines or less的时候需要用到python 3.4更新的selectors库,不得不安装一个pyenv(很好记,python environment)原味来自官方文档:https://github.com/yyuu/pyenv/blob/master/COMMANDS.md#command-referencepyenv local设置当前(Sets

2016-10-01 19:51:39 3700

转载 关于Blocking IO,non-Blokcing IO,async IO的区别和理解

来源:http://shmilyaw-hotmail-com.iteye.com/blog/1896683概括来说,一个IO操作可以分为两个部分:发出请求、结果完成。如果从发出请求到结果返回,一直Block,那就是Blocking IO(常见的顺序化程序结构);如果发出请求就可以返回(结果完成不考虑),就是non-blocking IO;如果发出请求就返回,结果返回是Block在s

2016-10-01 18:13:32 1986

原创 python学习之 socket

Socket的中文名套接字(socket):源IP地址和目的IP地址以及源端口号和目的端口号的组合称为套接字。其用于标识客户端请求的服务器和服务它是网络通信过程中端点的抽象表示,包含进行网络通信必须的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远地主机的IP地址,远地进程的协议端口。socket的作用:区分不同应用程序进程间的网络通信和连接,主要有3个参数

2016-10-01 15:45:05 1238

空空如也

空空如也

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

TA关注的人

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