数据结构
wilson_m
这个作者很懒,什么都没留下…
展开
-
【数据结构】二叉树常用操作集锦
本文主要介绍下二叉树常用的一部分操作数据结构提到二叉树,离不开数据结构,数据结构中常用的数据结构就是链表和数组了。数据结构的基本操作对于任何数据结构,其基本操作无非遍历 + 访问,再具体一点就是:增删查改。数据结构存在的目的都是在不同的应用场景,尽可能高效地增删查改如何遍历 + 访问?我们仍然从最高层来看,各种数据结构的遍历 + 访问无非两种形式:线性的和非线性的。线性就是 for/while 迭代为代表,非线性就是递归为代表。再具体一步,无非以下几种框架:遍历数组遍历框架,典型的线性迭代原创 2020-08-31 14:06:35 · 248 阅读 · 0 评论 -
java代码实现二叉树的遍历
二叉树的定义 二叉树(Binary Tree)是n(n>0)个结点的有限集合,该集合或者为空集(称为空二叉树),或者有一个根结点和两颗互不相交的、分别称为根结点的左子树和右子树的二叉树组成。二叉树的遍历 二叉树原创 2018-03-01 22:38:09 · 399 阅读 · 0 评论 -
【排序算法】选择排序--Java实现
1、基本思想选择排序是一种简单直观的排序算法,其基本原理如下:对于给定的一组记录,经过第一轮比较后得到最小的记录,然后将该记录的位置与第一个记录的位置交换;接着对不包括第一个记录以外的其他记录进行第二次比较,得到最小记录并与第二个位置记录交换;重复该过程,直到进行比较的记录只剩下一个为止。2、复杂度分析从简单选择排序的过程来看,它最大的特点是交换移动数据次数相当少,这样就节约了相应...原创 2018-05-02 14:54:13 · 175 阅读 · 0 评论 -
顺序栈———Java实现
概念栈是一种只允许在一端进行插入或删除的线性表(逻辑结构属于操作受限的线性表)。栈的操作端通常被称为栈顶,另一端被称为栈底。栈的插入操作称为进栈(压栈|push);栈删除操作称为出栈(弹栈|pop)。特点栈中的元素是“先进后出”的特点,只允许在栈顶操作。存储结构顺序存储的栈称为顺序栈;链式存储的栈称为链式栈。Java实现围绕栈的4个元素来实现栈 ...原创 2018-04-26 20:06:37 · 3987 阅读 · 1 评论 -
【数据结构】单链表的java实现
单向链表是一种线性表,实际上是由节点(Node)组成的,一个链表拥有不定数量的节点。其数据在内存中存储是不连续的,它存储的数据分散在内存中,每个结点只能也只有它能知道下一个结点的存储位置。由N各节点(Node)组成单向链表,每一个Node记录本Node的数据及下一个Node。向外暴露的只有一个头节点(Head),我们对链表的所有操作,都是直接或者间接地通过其头节点来进行的。Java代码1...原创 2018-04-23 09:50:44 · 237 阅读 · 0 评论 -
链式栈--------Java实现
链式栈示意图Java代码实现/** * @author mwl * @date 2018年4月27日 * @version 1.0.0 */public class LinkStack { /** * 定义链栈的结点 * Object类型的数据域 * Node类型的指针域 * @author MWL */...原创 2018-04-27 10:33:18 · 823 阅读 · 0 评论