数据结构
文章平均质量分 67
数据结构
植树chen
JAVA程序员
展开
-
Java数据结构10:树
第10章:树结构基础 1、树结构 数组: 优点:通过下标方式访问元素,速度快。对于有序数组还可以使用二分查找提高检索速度 缺点:如果要检索具体某个值,或者插入值(按一定顺序)会移动整体,效率较低。 链表: 优点:插入一个数值,只需要将插入节点链接到链表中,删除效率也很好 缺点:在进行检索时,效率低,需要从头节点开始遍历 树: 提高数据存储,读取的效率 树的示意图 2、二叉树 每个节点最多只能有两个子节点,左节点,右节点 满二叉树:所有叶子节点都在最后一层,节点总数=2^n-1,n为层数原创 2021-03-09 09:03:50 · 298 阅读 · 0 评论 -
Java数据结构9:哈希表
第9章:哈希表 1、哈希表(散列) Hash table :根据关键码值(key-value)而直接进行访问的数据结构 把(key-value)映射到表中一个位置来访问记录,映射函数叫做散列函数,存放记录的数组叫散列表 这是数组实现的 也可以用链表来实现 public class HashTabDemo { public static void main(String[] args) { HashTab hashTab = new HashTab(7); //写原创 2021-03-09 08:32:42 · 351 阅读 · 0 评论 -
Java数据结构8:查找算法
第8章:查找算法 1、线性查找算法 epublic static int seqSearch(int[] arr,int value){ for (int i = 0; i < arr.length; i++) { if (arr[i]==value){ return i; } } return -1; } 2、二分查找算法(折半) 数组有序,从小到大排序原创 2021-03-09 08:31:22 · 321 阅读 · 0 评论 -
Java数据结构7:排序算法
第7章:排序算法 1、排序 内部排序: 将需要处理的所有数据都加载到内存中进行排序。 外部排序: 数据量过大,无法全部加载到内存中,需要借助外部存储(文件等)进行排序 时间频度: 一个算法中语句执行次数 时间复杂度: 算法中的基本操作语句的重复执行次数是问题规模n的某个函数。 空间复杂度: 临时占用存储空间大小的度量。 常见的算法时间复杂度由小到大依次为: O(1)<O(log2n)<O(n)<O(nlog2n)<O(n2)<O(n3)<O(nk)<O(2n) Ο(1)<Ο(log_2n)<Ο(n)<Ο(原创 2021-03-09 08:30:14 · 145 阅读 · 0 评论 -
java数据结构6:递归
第6章:递归 递归:方法自己调用自己,每次调用时传入不同的变量 1、调用机制 public class Demo01 { public static void main(String[] args) { test(4); } public static void test(int n){ if (n>2){ test(n-1); } System.out.prin原创 2021-03-09 08:28:35 · 402 阅读 · 0 评论 -
java数据结构5:栈
第5章:栈 1、栈 栈(stack):先进后出 2、数组模拟栈 class ArrayStack{ private int maxSize; private int[] stack; private int top=-1; //栈顶 public ArrayStack(int maxSize) { this.maxSize = maxSize; stack=new int[this.maxSize]; } public原创 2021-03-09 08:26:41 · 134 阅读 · 0 评论 -
java数据结构4:链表
第4章:链表 1、单向链表 节点类 public class HeroNode { public int no; public String name; public String nickname; //别名 public HeroNode next; public HeroNode(int no, String name, String nickname) { this.no = no; this.name = name原创 2021-03-09 08:25:25 · 233 阅读 · 0 评论 -
Java数据结构和算法1概述、2数据结构、3稀疏数组和队列
Java数据结构和算法 第1章:概述 程序=算法+数据结构 第2章:数据结构 线性结构: 数据元素之间存在一对一的线性关系 顺序存储结构 顺序存储的线性表称为顺序表,顺序表中的存储元素是连续的 链式存储结构 链式存储的线性表称为链表,链表中的存储元素不一定是连续的,元素节点中存放数据元素以及相邻元素的地址信息 线性结构常见的:数组、队列、链表和栈 非线性结构: 二维数组,多维数组,广义表,树结构,图结构 第3章:稀疏数组和队列 1、稀疏数组 当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀原创 2021-03-09 08:19:29 · 155 阅读 · 0 评论