首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
码农StayUp
掘友等级
公众号
|
码农StayUp
人生就是一个不断学习的过程,通过学习来充实自己的头脑,让自己更有智慧的生活下去,去探索那未知领域的神秘,去享受成长带来的快乐和惬意。
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
53
文章 50
沸点 3
赞
53
返回
|
搜索文章
最新
热门
『数据结构与算法』B树图文详解(含完整代码)
1. 前言 迄今为止,已经介绍了《 二叉查找树 》和《 AVL树 》,我们始终假设可以把整个数据结构存储在内存中。可是,如果数据多到内存装不下,这就意味着必须把数据放在磁盘上,显然这些数据结构不再适用。 问题在于磁盘的I/O速度是远远不如内存访问速度的,然而从一棵树中查找到某个…
『设计模式』单例模式
1. 单例模式 单例模式(Singleton Pattern)是一种简单的对象创建型模式。该模式保证一个类仅有一个实例,并提供一个访问它的全局访问点。 将构造方法私有化,杜绝使用构造器创建实例。 2. 单例模式的几种实现 对于单例模式有以下5种实现。 2.1. 懒汉式 该方式是…
『数据结构与算法』AVL树(平衡二叉树)
1. AVL树 AVL(Adelson-Velskii 和 Landis)树是带有平衡条件的二叉查找树,又叫做平衡二叉树。在AVL树中任何节点的两个子树高度差最多为1,所以它又被称为高度平衡树。 如下图中可以清晰的看出,左边的树其根节点左子树高度为3,右子树高度为2,符合AVL…
教你使用GitHub搭建个人网站
1. 创建一个代码仓库 登录你的GitHub,点击右上角的 + 号按钮,选择【New repository】,打开创建新仓库页面。 创建一个名为为username.github.io的代码仓库,其中username为你的GitHub的账户名称。 下图中因为我的代码仓库gozhu…
Java数据结构与算法分析 | 二叉查找树(BST)
1. 二叉查找树(Binary Search Tree) 二叉查找树又叫二叉排序树(Binary Sort Tree),或叫二叉搜索树,简称BST。BST是一种节点值之间有次序的二叉树。其特性是: 二叉查找树相比于其他数据结构的优势在于查找、插入的时间复杂度较低,为$O(log…
Java数据结构与算法分析 | 二叉树
1. 二叉树(Binary Tree) 二叉树是一棵特殊的树,其结构简单但很重要。二叉树的特点是每个节点最多有两棵子树,并且有左右之分。 如果一棵二叉树的所有叶子节点都在最后一层,称为满二叉树。满二叉树的结点总数 = $2^n-1$ (n为层数)。如下图二叉是的层数为3,其结点…
Java数据结构与算法分析 | 树
1. 前言 我们前面讲到了数组和链表两种数据结构,其各自有自己的优缺点,我们来回顾一下。 优点:通过下标访问速度非常快。 我们本篇讲到的树,便能提高数据的存储和读取效率。 2. 树(Tree) 树是一种非线性的数据结构,它包含n(n>=1)个节点,(n-1)条边的有穷集合。把它…
Java数据结构与算法分析 | 队列
1. 队列(queue) 队列和栈一样,也是一个操作受限制的线性表。不同的是队列的插入在一端进行,我们称为队尾(rear);而删除(取出)在另一端进行,我们称为队头(front)。 2. 队列的数组实现 如同栈一样,对队列的每一种操作,链表实现或数组实现都给出快速的运行时间。队…
Java数据结构与算法分析 | 栈
1. 栈(Stack) 栈又叫堆栈,是一种运算受限制的线性表,限定只能在一端进行插入和删除操作,该端称为栈顶(Top),相对的另一端叫栈底(Bottom)。 根据栈的定义可知,最先进入栈的元素在栈底,最后进入栈的元素在栈顶。而删除元素刚好相反,即删除顺序从栈顶到栈底 入栈(pu…
Java数据结构与算法分析 | 链表(单链表、双链表、环形链表)
1. 前言 通过前篇文章《数组》了解到数组的存储结构是一块连续的内存,插入和删除元素时其每个部分都有可能整体移动。为了避免这样的线性开销,我们需要保证数据可以不连续存储。本篇介绍另一种数据结构:链表。 2. 链表(Linked List) 链表是一种线性的数据结构,其物理存储结…
下一页
个人成就
文章被点赞
195
文章被阅读
34,556
掘力值
1,350
关注了
15
关注者
44
收藏集
5
关注标签
42
加入于
2020-03-26