
数据结构
文章平均质量分 89
augfun
旧博客遗失,新博客凑活着用吧
展开
-
java双向链表
1、什么是链表? 链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针连接次序实现的。 每一个链表都包含多个节点,节点又包含两个部分,一个是数据域(储存节点含有的信息),一个是引用域(储存下一个节点或者上一个节点的地址)。 链表的理解示意图 2、链表的特点是什么? 获取数据麻烦,需要遍历查找,比数组慢 方便插入、删除 3、链表的实现原理 创建一个节...转载 2020-04-19 21:54:35 · 367 阅读 · 0 评论 -
java单链表
一、概述: 本文主要总结单链表常见操作的实现,包括链表结点添加、删除;链表正向遍历和反向遍历、链表排序、判断链表是否有环、是否相交、获取某一结点等。 二、概念: 链表: 一种重要的数据结构,HashMap等集合的底层结构都是链表结构。链表以结点作为存储单元,这些存储单元可以是不连续的。每个结点由两部分组成:存储的数值+前序结点和后序结点的指针。即有前序结点的指针又有后序结点的指针的...转载 2020-04-19 21:39:04 · 295 阅读 · 0 评论 -
二叉树的遍历
一、预备知识 首先你得了解 树 的基本概念,二叉树是每个结点至多只有两个子结点的树,常称之为左右结点。 二叉树的遍历方式有 先序遍历(preorder traeversal)、中序遍历(inorder traversal)、后序遍历(postorder traversal) 三种,假设结点为 N,左子结点为 L,右子结点为 R。则: 先序遍历:NLR(N 在最前面)根左右 中序遍历:LNR(...转载 2020-04-19 17:42:38 · 424 阅读 · 0 评论 -
Java数组
Java数组的定义和使用 Java 中定义数组的语法有两种: type arrayName[]; type[] arrayName; type 为Java中的任意数据类型,包括基本类型和组合类型,arrayName为数组名,必须是一个合法的标识符,[ ] 指明该变量是一个数组类型变量。例如: int demoArray[]; int[] demoArray; 这两种形式没...转载 2018-09-06 05:41:55 · 740 阅读 · 0 评论 -
java栈和队列
栈 栈只允许访问一个数据项:即最后插入的数据。溢出这个数据才能访问倒数第二个插入的数据项。它是一种"后进先出"的数据结构。 栈最基本的操作是出栈(Pop)、入栈(Push),还有其他扩展操作,如查看栈顶元素,判断栈是否为空、是否已满,读取栈的大小等。 /** * 栈是先进后出 * 只能访问栈顶的数据 * @author dream * */ /** * 基于数组来实现栈的基本...转载 2018-09-06 05:47:08 · 788 阅读 · 0 评论 -
Java链表
链表的基本结构 public class LNode { public String data;//节点数据 LNode next;//下一个节点 } 这是最基本的链表结构,还有双向链表和循环链表会在文章最后提到。 建立单链表 头部插入建立单链表 头部插入建立方式的思想是,首先建立一个指针, 1.然后新建第一个节点,让指针指向这个节点 2.然后再新建一个节点,通过指...转载 2018-09-06 06:01:15 · 4696 阅读 · 0 评论 -
Java字符串
字符串声明和赋值 String name = new String("京唐C"); 或者 String name = "京唐C"; 或者 String name=""; name = "京唐C"; 获取字符串长度 使用length()方法 int lenth = name.length(); 字符串连接 使用concat()方法 String user="觅音博客";...转载 2018-09-06 06:08:31 · 211 阅读 · 0 评论 -
java树
树定义和基本术语 定义 树(Tree)是n(n≥0)个结点的有限集T,并且当n>0时满足下列条件: (1)有且仅有一个特定的称为根(Root)的结点; (2)当n>1时,其余结点可以划分为m(m>0)个互不相交的有限集T1、T2 、…、Tm,每个集Ti(1≤i≤m)均为树,且称为树T的子树(SubTree)。 特别地,不含任何结点(即n=0)的树,称为空树。 如下就是...转载 2018-09-06 06:18:29 · 390 阅读 · 0 评论