数据结构
whyalwaysmea
I know the way
展开
-
二叉搜索树(Binary Search Tree)
二叉搜索树(Binary Search Tree)二叉搜索树(BST)也称为有序二叉树、排序二叉树。 是指一棵空树或者具有下列性质的二叉树: 1. 若任意节点的左子树不空,则左子树上所有结点的值均小于它的根结点的值 2. 任意节点的右子树不空,则右子树上所有结点的值均大于它的根结点的值 3. 任意节点的左、右子树也分别为二叉查找树。 4. 没有键值相等的节点。二叉查找树相比...原创 2018-02-28 16:34:09 · 418 阅读 · 0 评论 -
Find Mode in Binary Search Tree
DescriptionGiven a binary search tree (BST) with duplicates, find all the mode(s) (the most frequently occurred element) in the given BST.Assume a BST is defined as follows:The left subtree of ...原创 2018-03-05 15:40:11 · 223 阅读 · 0 评论 -
【Java编程的逻辑】容器类的总结
抽象容器类用法和特点容器类有两个根接口,分别是Collection 和 Map ,Collection表示单个元素的集合,Map表示键值对的集合 。 CollectionCollection表示的数据集合有基本的增、删、查、遍历等方法,但没有定义元素间的顺序或位置,也没有规定是否有重复元素。 List: 是Collection的子接口,表示有顺序或位置的数据集合...原创 2018-04-16 12:03:12 · 225 阅读 · 0 评论 -
【Java编程的逻辑】堆与优先级队列&PriorityQueue
完全二叉树 & 满二叉树 & 堆基本概念满二叉树是指除了最后一层外,每个节点都有两个孩子,而最后一层都是叶子节点,都没有孩子。 满二叉树一定是完全二叉树,但完全二叉树不要求最后一层是满的,但如果不满,则要求所有节点必须集中在最左边,从左到右是连续的,中间不能有空的。特点在完全二叉树中,可以给每个节点一个编号,编号从1开始连续递增,从上到下,从左到...原创 2018-04-12 15:29:44 · 776 阅读 · 1 评论 -
【Java编程的逻辑】Map和Set
HashMapMap有键和值的概念。一个键映射到一个值,Map按照键存储和访问值,键不能重复。HashMap实现了Map接口。 基本原理HashMap的基本实现原理:内部有一个哈希表,即数组table,每个元素table[i]指向一个单向链表,根据键存取值,用键算出hash值,取模得到数组中的索引位置index,然后操作table[index]指向的单向链表。 存取的时候依据...原创 2018-04-09 13:34:43 · 380 阅读 · 3 评论 -
【Java编程的逻辑】列表和队列
ArrayListArrayList中有两个方法可以返回数据public Object[] toArray();public <T> T[] toArray(T[] a);ArrayList中有一个静态方法asList可以返回对应的ListInteger[] a = {1, 2, 3};List<Integer> list = Arrays.as...原创 2018-03-29 15:24:25 · 386 阅读 · 0 评论