摘要: Java语言什么都好,就是在OJ的时候真的是太慢了,今天来讲解一种让Java运行速度快速提高的方法。 1.Scanner scanner类在运行时候真的是巨慢无比,尤其是当要读入很多数据的时候如果用scanner,那一定能让你感受到绝望看一个,所以在读入数据时我们一般使用BufferedReader 阅读全文
posted @ 2019-02-20 16:24 AdamLeeXi 阅读(1843) 评论(3) 推荐(0) 编辑
摘要: 贪心算法的所谓“贪心”,就是将问题转化为多个小问题,并求得这多个子问题的最优解,最终解的最优解便是这多个小问题最优解的串联。 在做贪心算法时,有两点需要考虑:1,如何将问题分解为一个个子问题。2,寻求所有子问题的最优解。 这里先举两个例子: 一, [1 , 5] ,[2 , 3],[4 , 5],[ 阅读全文
posted @ 2019-02-16 17:49 AdamLeeXi 阅读(630) 评论(1) 推荐(1) 编辑
摘要: 刷题过程中常常遇到排序问题,Java中自带的sort方法可以非常方便的帮助我们进行排序。 常见的排序问题有两种情形: 1.对一个数组进行排序。 2.对自定义类型的类进行排序。 一,对数组进行排序: 通常情况下我们可以使用Array.sort()来对数组进行排序,有以下3种情况: 1.Array.so 阅读全文
posted @ 2019-02-14 18:33 AdamLeeXi 阅读(32816) 评论(1) 推荐(1) 编辑
摘要: 并查集常常用来判断在一个图中是否存在回路(是否可以生成树),以及用来判断图的联通性问题。 这里介绍并查集的一种简单且使用较多的一种实现方法——快速union,快速find,基于重量的并查集实现方法。 首先,需要两个数组——parent[] 与weight[] ,parent用来存放该节点的父节点,w 阅读全文
posted @ 2019-02-13 16:50 AdamLeeXi 阅读(2414) 评论(0) 推荐(1) 编辑
摘要: 用通俗的语言讲解dijkstra算法 阅读全文
posted @ 2019-02-09 10:43 AdamLeeXi 阅读(1598) 评论(0) 推荐(0) 编辑
摘要: 上一篇文章解决了DFS的问题,这次来解决BFS的问题就简单多了 DFS实现重要依赖于堆栈/递归 ,较为简单的解决了如何遍历所有元素,以及寻求“终点”的问题。 但是,DFS虽然可以查找到到达路径,但是却找不到最短的路径,针对这一问题,给出了BFS(广度优先遍历)的算法。 首先,先给出BFS的基本过程: 阅读全文
posted @ 2019-02-02 16:00 AdamLeeXi 阅读(2544) 评论(0) 推荐(0) 编辑
摘要: 妈妈看了都能懂的DFS和BFS讲解!!! 阅读全文
posted @ 2019-02-01 15:42 AdamLeeXi 阅读(9456) 评论(2) 推荐(1) 编辑
摘要: 正式开通博客,希望可以坚持下去,也希望自己可以从中有所收获 阅读全文
posted @ 2019-01-29 22:19 AdamLeeXi 阅读(224) 评论(0) 推荐(0) 编辑