算法
kinva_X
这里是一条没有感情的简介,别看了,浪费时间。
展开
-
使用bit进行计数统计
/** * 这个类的主要用途是使用bit计数,存储使用int,一个int有32位,可以记录32个数据 */public class ArrayBitmap { /** * 将num的第pointer位改为1 * @param num 待修改的数据 * @param pointer 从0开始计数,从右到左数,待修改的位置 * @return int */ public static int add(int num, int pointe原创 2020-08-03 22:40:01 · 355 阅读 · 0 评论 -
辅助理解01背包问题和完全背包问题的优化思想
1、先上代码(Java)import java.util.Arrays;public class CompleteBackpack { private int[] weight, value; //重量,价值 private static int cap[];//cap[i]表示可用重量为i时的最大价值 private int C;//最大容量 //01背包 public int knapsack01() { int length = weig原创 2020-07-30 20:13:22 · 140 阅读 · 0 评论 -
基于JAVA8-ConcurrentHashMap的putVal和addCount方法的学习总结
final V putVal(K key, V value, boolean onlyIfAbsent) { if (key == null || value == null) throw new NullPointerException();// hashCode 低16位异或高16位; int hash = spread(key.hashCode()); // 单个数组单元中的链表长度, 如果是红黑树则直接是2 int binCount = 0;.原创 2020-05-14 16:04:08 · 294 阅读 · 0 评论 -
Java中,通过dfs实现全排列
dfs需要注意三点:截止/边界条件遍历候选(遍历可能出现的情况)再一次进行dfs之前,需要进行筛选 static void dfs(int p[],StringBuffer res){ //截止条件 if (res.length()==p.length){ System.out.println(res); ...原创 2020-04-16 23:04:09 · 867 阅读 · 0 评论