自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (2)
  • 收藏
  • 关注

转载 Morris Traversal

网上看到的总结的很好Morris Traversal文章:点击打开链接 原文链接本文主要解决一个问题,如何实现二叉树的前中后序遍历,有两个要求:1. O(1)空间复杂度,即只能使用常数空间;2. 二叉树的形状不能被破坏(中间过程允许改变其形状)。通常,实现二叉树的前序(preorder)、中序(inorder)、后序(postorder)遍历有两个常用的方法:一是递

2017-01-11 11:59:36 320

原创 跳表(skiplist)

之前看随机化的平衡树时看到了跳表这种数据结构,在网上查了些资料,自己实现了一下,确实比各种平衡树好写多了,并且效率也不低。跳表这种数据结构其实就是对链表的扩展,采用多层链表的形式,每高一层节点数量大约减少1/2。例如:1-------------->5----------------->null1----->3------>5----->7-------->null

2017-01-09 21:18:07 279

原创 随机化的二叉搜索树总结(treap,随机输入)

看数据结构的时候,书里面说对于随机输入的序列,BST的期望深度是log(n),当时没当一回事(其实是证明看不懂),这两天复习二叉搜索树遇到树堆(treap)又回去翻了一下证明过程,其实还蛮简单的。   总结起来也就一句话:   只要保证BST的任意子树的根节点选取是随机的,那么这颗树的期望深度就必然是log(n).证明如下: 1.首先要定义一个概念——内部路径长(D(N)),也就是

2017-01-06 22:01:58 2089

原创 树状数组(binary indexed tree)

树状数组是一种用于查询区间和的数据结构。比如对于数组a[1,2,3,4,5,6,7,8,9,10],我们要知道它的前4项和,我们就需要把这前四个一个个加起来才能得到结果,也就是O(K)(前k项和)的复杂度。如果查询次数少,k也比较小还可以接受,但是在大规模的查询和数据量时,这个复杂度就太高了。树状数组就是为了解决这个问题而创造出来的,它能在log(k)的复杂度内查询区间和。树状数组其实就是

2017-01-05 18:42:42 386

原创 平衡二叉树总结四:替罪羊树(scapegoat tree)

之前在查treap树的时候,偶然在知乎看到一篇比treap树还简单的替罪羊树的介绍,传送门:https://zhuanlan.zhihu.com/p/21263304,大神还是写的很好的,有兴趣的可以去看下,当然也可以看我的总结。一 、平衡条件  左子树大小  二、 替罪羊树总结起来就两个操作:  1.拉平,当树不满足平衡条件时,把树伸展成链表。  2.重构,递归的选取链表

2017-01-05 15:35:32 1701

原创 平衡二叉树总结三:treap树(树堆)

类似avl树的还有红黑树和伸展树,然而编程确实很复杂,我先总结treap树吧,比赛啥的也能用得上。从树堆这个名字不难看出treap这种数据结构应该同时具有二叉搜索树与二叉堆的某些性质,实际上树堆首先是一颗二叉搜索树,也就是说它满足  left 0.treap树一般结构struct treap{ treap* left; treap* right; int val,prior

2017-01-04 09:39:24 995

原创 平衡二叉树总结二:avl树

avl树是第一个创造出来的平衡二叉树,之后很多的平衡树都是基于AVL树的基本操作——旋转来实现的。avl树结构如下:struct avl{ avl* left; avl* right; int val,h;//val值域,h高度。};typedef avl* tree;//获取高度的函数int height(tree t){  if(t==NULL)return

2017-01-03 21:28:55 367

原创 平衡二叉树总结一:二叉搜索树

这段时间一直再刷leetcode,现在刷了快一半了吧,感觉没什么状态了,再继续刷可能就不太好了,想想不如回头再补补算法吧。总结了自己在基础算法上的一些短板,准备后面这些时间把它们都补上。好了,上正题。  平衡二叉树算是应用最广泛的树型结构了吧,至少在内存里面是吧。刚开始学数据结构的时候,树的那一章基本没怎么看,大部分精力都放在了排序和图论里,而且感觉树也挺简单的,现在刷题才慢慢发现这种数据结构

2017-01-03 10:20:38 422

原创 Complete Binary Search Tree(mooc)

04-树6 Complete Binary Search Tree (30分)A Binary Search Tree (BST) is recursively defined as a binary tree which has the following properties:The left subtree of a node contains only nodes with

2016-09-27 20:33:20 362

原创 python bisect模块

bisect 是python的一个二分查找算法模块,可以在已排序的列表等序列容器中查找与插入值。函数集:(1)bisect.bisect_left(a,x, lo=0, hi=len(a))如果x在a中,该函数会返回x的位置,如果不在,那么返回最后一个小于x的值的位置。(lo 与 hi 用于设定查找的子列表)a = [0,1,2,3,4,5,6,7,8]bisect.bis

2016-09-23 20:28:23 794

原创 Tree Traversals Again(mooc 浙大算法课)

03-树3 Tree Traversals Again (25分)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 numbere

2016-09-22 09:26:50 3761

原创 pat 03-树2 List Leaves(mooc 陈越、何钦铭-数据结构)

Given a tree, you are supposed to list all the leaves in the order of top down, and left to right.Input Specification:Each input file contains one test case. For each case, the first line gives

2016-09-19 20:48:44 1352

原创 python2.7-deque 类

deque 类是python中的一个双端队列类,能够在队列两端以O(1)的效率插入与删除数据,位于模块collections中。1.deque([iterable[,maxlen=]])  deque类,输入一个可迭代对象(iterable),maxlen是可选项表示队列的最大容量,不设置时为无限,超出容量时如果从后面入队会将最前面的元素挤出队列,反之则将最后的元素挤出队列。示

2016-09-19 19:42:49 1474

kubeflow安装包

kubeflow的安装包

2018-12-05

tensorflow1.3

centos6上编译的tensorflow,可以在老的服务器上使用,压缩文件中含有所有依赖whl文件

2018-01-31

空空如也

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

TA关注的人

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