数据结构
never123450
javaweb 自学还未成才
展开
-
链表
线性数据结构# 链表为什么重要链表 真正的数据结构最简单的动态数据结构更深入的理解引用(或者指针)更深入的理解递归辅助组成其他数据结构链表Linked List数据存储在“节点”(node)中优点:真正的动态,不需要处理固定容量的问题缺点:丧失了随机访问的能力数组与链表的对比数组最好用于索引有语义的情况。index[2]最大的优点:支持快速查询链表不适...原创 2019-01-17 12:03:59 · 121 阅读 · 0 评论 -
数组基础
数组基础把数据码成一排进行存放索引可以有语义也可以没有语义我们先来看一个简单的数组package arithmetic;public class main { public static void main(String[] args) { int[] arr = new int[10]; for (int i = 0; i < arr...原创 2019-01-14 10:02:14 · 193 阅读 · 0 评论 -
栈和队列
栈 Stack栈也是一种线性结构相比数组,栈对于的操作以是数组的子集只能从栈的一端添加元素,也只能从一端取出元素这一端称为栈顶把栈顶的元素取出来叫做出栈栈是一种后进先出的数据结构Last In First Out(LIFO)在计算机的世界里,栈拥有者不可思议的作用栈的应用无处不在的Undo操作(撤销)程序调用的系统栈栈的实现...原创 2019-01-14 16:06:14 · 103 阅读 · 0 评论 -
二分搜索树
树结构为什么要有树结构?比如家谱将数据使用树结构存储后,出奇的高效二分搜索树(Binary Search Tree)平衡二叉树:AVL;红黑树堆;并查集线段树;tire(字典树,前缀树)二分搜索树(Binary Search Tree)和链表一样,动态的数据结构二叉树(多叉树)二叉树具有唯一的根节点二叉树最多有2个孩子二叉树的每个节点最多有一个父亲节点二叉...原创 2019-01-24 15:18:41 · 263 阅读 · 0 评论 -
集合和映射(set and map)
集合回忆上次实现的二分搜索树不能放重复的元素有序集合和无需集合有序集合中的元素具有顺序性(基于搜索树的实现)无需集合中的元素没有顺序性(基于hash表的实现)多重集合集合中的元素可以重复映射 Map存储(键值)数据对的数据结构(key,value)根据key寻找value...原创 2019-01-25 12:18:04 · 228 阅读 · 0 评论 -
链表与递归
链表从一道leecode体面中先看题目:删除链表中等于给定值val的所有元素示例:给定:1->2->3->8->4->56->8,val=8返回:1->2->3->4->56codingpackage arithmetic.recursive;public class ListNode { public int...原创 2019-01-22 21:22:13 · 1875 阅读 · 1 评论