数据结构
活在梦里丶
学渣的逆袭之路~
展开
-
java数据结构——Stack栈(单链表实现)
package com.tig.stack;public class LinkedStack { transient Node first; public LinkedStack() { first = new Node<>(); } public boolean push(E data) { Node node = new Node(data, first原创 2017-03-29 21:42:47 · 668 阅读 · 0 评论 -
java数据结构——Stack栈(线性表实现)
public class ArrayStack { private static final int DEFAULT_CAPACITY = 10; private int top; private E[] items; @SuppressWarnings("unchecked") public ArrayStack() { top = -1; items = (E[]原创 2017-03-29 22:56:08 · 258 阅读 · 0 评论 -
java数据结构——LinkedList(单链表)
Node节点定义package com.tig.list;public class Node { private E data; private Node next; //下一个节点 public Node(E data, Node next) { super(); this.data = data; this.next = next; }原创 2017-03-29 21:21:48 · 818 阅读 · 0 评论 -
java数据结构——ArrayList(线性表)
List接口package com.tig.list;import java.util.Iterator;public interface List { /** * 从列表中移除所有元素(可选操作)。 */ public void clear(); /** * 向列表的尾部添加指定元素 * @param e * @return */ public原创 2017-03-29 21:19:23 · 898 阅读 · 0 评论 -
java数据结构——BinarySearchTree(二叉查找树)
二叉排序树(Binary Sort Tree)又称二叉查找树(Binary Search Tree),亦称二叉搜索树。原创 2017-03-30 23:23:19 · 1620 阅读 · 0 评论 -
java数据结构——AvlTree(平衡二叉查找树)
package com.tig.tree;/** * 3, 2, 1, 4, 5, 6, 7, 10, 9, 8 * Created by Tig on 2017/5/19. */public class AvlTree> { private AvlNode root; public AvlTree() { root = null; }原创 2017-06-03 17:14:55 · 551 阅读 · 0 评论 -
LRU算法概述
前言互联网项目为了提升系统吞吐量,同时为了减少数据库的负载压力,通常会引入缓存,比如缓存用户的姓名、头像、等级等等之类的信息。在绝大部分的情况下(百万级用户),这么做都是没问题的,实现简单,同时也高效。但是当我们的系统用户量达到千万级以后,这么做就会遇到如下问题:占用内存过大,容易挤爆内存,同时内存又是非常稀缺有昂贵的资源针对用户信息进行全量缓存,并不一定所有的缓存都被利用,如果你们app...原创 2019-01-05 15:14:30 · 568 阅读 · 0 评论