算法其他
陈一Kristian
这个作者很懒,什么都没留下…
展开
-
约瑟夫环问题
public class second { static final int nums = 41; static final int killMan = 3; public static void main(String[] args){ int[] people = new int[nums]; int[] out = new int[...原创 2018-11-20 14:21:56 · 75 阅读 · 0 评论 -
最大公约数和最小公倍数
原文:https://mp.weixin.qq.com/s/7n0O86dDV7_4SpZtFa41Hw最大公约数辗转相除法:辗转相除法, 又名欧几里德算法(Euclidean algorithm),是求最大公约数的一种方法。 说简单一点:这条算法基于一个定理:两个正整数a和b(a>b),它们的最大公约数等于a除以b的余数c和b之间的最大公约数。比如10和25,25除以1...转载 2018-12-21 18:04:54 · 237 阅读 · 0 评论 -
java 大数加起来 (StringBuffer)
class test2{ public static void main(String[] args){ String a = "8888899999999888"; String b ="88888888888888"; String str = new BigInteger(a).add(new BigInteger(b)).toStr...转载 2018-12-24 21:11:14 · 110 阅读 · 0 评论 -
单调队列,窗口最大值
问题有一个整型数组arr和一个大小为w的窗口从数组的最左边滑到最右边,窗口每次向右边滑一个位置。例如,数组为[4,3,1,5,4,3,7,5],窗口大小为5时:[4 3 1 5 4] 3 7 5 max = 54 [3 1 5 4 3] 7 5 max = 54 3 [1 5 4 3 7] 5 max = 74 3 1 [5 4 3 7 5] max = 7...原创 2019-01-17 13:30:22 · 277 阅读 · 0 评论 -
Priority Queue(优先队列)最大堆最小堆
优先队列的大小是不受限制的,但在创建时可以指定初始大小。当我们向优先队列增加元素的时候,队列大小会自动增加。实际上是一个堆(不指定Comparator时默认为最小堆),通过传入自定义的Comparator函数可以实现大顶堆。这个特性能让写java的我们少了一大堆的建堆过程啊!!!import java.util.Comparator;import java.util.Priorit...原创 2019-03-05 09:24:37 · 3342 阅读 · 0 评论 -
递归 回溯 DFS的区别
写了很多题以后,突然乱掉了,尤其是递归和dfs傻傻分不清了,现在来总结一下首先他们是一个循序渐进的事情,然后他们解决什么问题呢?解决有多少种解决办法这种问题,最优解的话就用贪心和动归去做好了。1、最开始是递归,就是一个很简单的自己调用自己的一个操作,递归的一般姿势如下void f() { if(符合边界条件) { /////// ...原创 2019-03-18 10:49:49 · 424 阅读 · 0 评论