随笔分类 -  数据结构与算法

摘要:一、LRU是什么Least Recently Used,也就是最近最少使用,LRU缓存将最近最少使用的数据移除,让给最新读取的数据。而往往是最常读取的,也就是读取次数最多的。所以利用LRU缓存,我们可能提高系统的performance.二、LRU的实现实现方法一:使用 LinkedHashMap使用... 阅读全文
posted @ 2015-09-24 23:00 chuiyuan 阅读(547) 评论(0) 推荐(0)
摘要:package swordoffer;public class Loop { private static class Node { public Node next ; public AnyType data ; public Node(Node next , AnyType data)... 阅读全文
posted @ 2015-08-27 21:32 chuiyuan 阅读(375) 评论(0) 推荐(0)
摘要:private static class BinaryNode{ int data ; BinaryNode left ; BinaryNode right ; } /** * 写一个函数,输入一个二叉树,树中每个节点存放了一个整数值, * 函数返回这颗二叉树中相差最大的两个节点间的差值绝... 阅读全文
posted @ 2015-08-21 16:22 chuiyuan 阅读(333) 评论(0) 推荐(0)
摘要:package javastudy;public class Test4 { public static void main(String[] args){ String s [] = {"dad","bood","bada","Admin","xxx","Good", "aete","cc... 阅读全文
posted @ 2015-07-19 15:22 chuiyuan 阅读(200) 评论(0) 推荐(0)
摘要:package javastudy;import java.util.HashMap;import java.util.Map;public class TestMap { public static void main(String [] args ){ Map map = new HashMa... 阅读全文
posted @ 2015-07-17 23:13 chuiyuan 阅读(166) 评论(0) 推荐(0)
摘要:package javastudy;import java.util.ArrayList;import java.util.Collections;import java.util.Iterator;import java.util.TreeSet;public class Test1 { publ... 阅读全文
posted @ 2015-07-17 20:10 chuiyuan 阅读(1169) 评论(0) 推荐(0)
摘要:package c4;public class FibTest { public static void main(String []args ){ long begin = System.currentTimeMillis() ; System.out.println(fib(10)) ; ... 阅读全文
posted @ 2015-07-16 14:21 chuiyuan 阅读(464) 评论(0) 推荐(0)
摘要:public class Test { public static void main(String [] args){ String[] array =new String[] {"1","2","3"}; listAll(Arrays.asList(array), "") ; } pub... 阅读全文
posted @ 2015-07-16 09:22 chuiyuan 阅读(693) 评论(0) 推荐(0)
摘要:红黑树的特点(1)每个节点都是黑色,或者是红色。(2)根节点是黑色。(3)每个叶子节点(NIL)是黑色。【这里的叶子节点指的是空(NIL/NULL)的叶子节点】(4)如果一个节点是红色的,则它的子节点一定是黑色的。(5)从一个节点到这个节点的子孙节点的所有的路径上有相同数目的黑色节点。注意:(01)... 阅读全文
posted @ 2015-07-15 21:30 chuiyuan 阅读(635) 评论(0) 推荐(0)
摘要:http://bookshadow.com/weblog/2015/06/09/leetcode-basic-calculator/http://www.programcreek.com/2014/06/leetcode-basic-calculator-java/ 阅读全文
posted @ 2015-06-17 11:20 chuiyuan 阅读(166) 评论(0) 推荐(0)
摘要:参考http://www.cnblogs.com/skywang12345/p/3603935.htmlhttp://www.cnblogs.com/skywang12345/p/3691463.html#anchor1 阅读全文
posted @ 2015-05-29 23:57 chuiyuan 阅读(167) 评论(0) 推荐(0)
摘要:目录一、插入排序二、一些简单排序算法的下界三、希尔排序四、堆排序五、归并排序六、快速排序七、总结 我们先假设排序工作是在内存中完成的,也就是说数据量小于几百万,这称为内部排序。最后再考虑大量数据时的排序,也就是外部排序。对内部排序的研究将得出结论:存在几种容易 的算法 以O(N2)完成排序,如插入... 阅读全文
posted @ 2015-05-24 12:37 chuiyuan 阅读(447) 评论(2) 推荐(0)
摘要:一般发送到打印机的作业 放到队列中,但这并不一定是最好的做法 ,比如可能有一个作业很重要,可以先打印,这个时候,就可以用到优先队列。另外,短的作业一般应该首先完成 ,因此,在运行的程序中,短的作业有更高的优先权。一、模型优先队列一定要有的两个操作:insert ,deleteMin(找到并删除最小的... 阅读全文
posted @ 2015-05-23 14:01 chuiyuan 阅读(320) 评论(0) 推荐(0)
摘要:目录一、散列函数二、分离链接法三、不用链表的散列表四、再散列五、标准库中的散列表六、可扩散列七、小结散列表的实现通常叫作散列,是一种用于以常数时间完成 insert, delete ,find的技术,但是任何需要元素的排序信息的操作都不支持,如findMin, findMax ,按排序打印元素等。一... 阅读全文
posted @ 2015-05-17 12:53 chuiyuan 阅读(386) 评论(0) 推荐(0)
摘要:目录一、预备知识二、二叉树三、查找树ADT-----二叉查找树四、AVL树五、伸展树六、树的遍历七、B树八、标准库中的集合与映射九、二叉树的其它方法补充五、伸展树六、树的遍历中序遍历:二叉查找树可以很方便的按顺序输出项。将元素插入一个二叉树,再中序遍历输出。后序遍历:有时我们要先处理两个叶子节点再处... 阅读全文
posted @ 2015-05-12 21:18 chuiyuan 阅读(302) 评论(0) 推荐(0)
摘要:目录一、预备知识 二、二叉树三、查找树ADT-----二叉查找树四、AVL树五、伸展树六、树的遍七、B树八、标准库中的集合与映射 对于大量的输入数据 ,链表的线性访问时间太慢,不宜使用。而树的大部分操作都是O(logN).这种结果就是二叉查找树,它是两种库集合类 TreeSet /TreeMap 的... 阅读全文
posted @ 2015-05-10 22:20 chuiyuan 阅读(228) 评论(0) 推荐(0)
摘要:抽象数据类型(abstract data type ADT)是带有一组操作的对象的集合。一、 表ADT表的数组实现数组实现时,插入和删除的花费可能会比较大,这样要看操作发生在什么地方。最坏情况如,在0处插入,和删除第一个元素。此时为O(N)。如果表是通过在高端插入,其后只发生对数组的查找访问(fin... 阅读全文
posted @ 2015-05-10 20:22 chuiyuan 阅读(213) 评论(0) 推荐(0)
摘要:下面是LinkedList实现package c3;import java.util.ConcurrentModificationException;import java.util.Iterator;import java.util.NoSuchElementException;import ja... 阅读全文
posted @ 2015-04-26 23:25 chuiyuan 阅读(207) 评论(0) 推荐(0)
摘要:下面是ArrayListpackage charpter3;import java.util.Iterator;import java.util.NoSuchElementException;public class MyArrayList implements Iterable { priva... 阅读全文
posted @ 2015-04-23 22:40 chuiyuan 阅读(264) 评论(0) 推荐(0)
摘要:集合接口import java.util.Iterator;public interface Collection extends Iterable{ int size (); boolean isEmpty(); void clear (); boolean contains(AnyType x... 阅读全文
posted @ 2015-04-23 11:33 chuiyuan 阅读(529) 评论(0) 推荐(0)