阿里-马云的学习笔记

导航

2020年4月26日 #

面试题:如何判断单向链表中是否有“环”

摘要: 题目 有一个单向链表,链表中有可能出现“环”,就像下图这样。那么,如何用程序来判断该链表是否为有环链表呢? 解决方案 方法1: 首先创建一个以节点ID为Key的HashSet集合,用来存储曾经遍历过的节点。然后同样从头节点开始,依次遍历单链表中的每一个节点。每遍历一个新节点,都用新节点和HashSe 阅读全文

posted @ 2020-04-26 18:30 阿里-马云的学习笔记 阅读(3823) 评论(1) 推荐(1) 编辑

数据结构(二)-----二叉堆

摘要: 二叉堆 概念 二叉堆本质上是一种完全二叉树,它分为两个类型。最大堆以及最小堆,二叉堆的根节点叫作堆顶。最大堆和最小堆的特点决定了:最大堆的堆顶是整个堆中的最大元素;最小堆的堆顶是整个堆中的最小元素 最大堆与最小堆 1. 最大堆 最大堆的任何一个父节点的值,都大于或等于它左、右孩子节点的值。 2. 最 阅读全文

posted @ 2020-04-26 15:12 阿里-马云的学习笔记 阅读(715) 评论(0) 推荐(0) 编辑

数据结构(一)-----树简介、树遍历

摘要: 树 概念 树是由结点或顶点和边组成的(可能是非线性的)且不存在着任何环的一种数据结构。没有结点的树称为空(null或empty)树。一棵非空的树包括一个根结点,还(很可能)有多个附加结点,所有结点构成一个多级分层结构。 1. 有且仅有一个特定的称为根的节点。 2. 当n>1时,其余节点可分为m(m> 阅读全文

posted @ 2020-04-26 12:34 阿里-马云的学习笔记 阅读(492) 评论(0) 推荐(0) 编辑