自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

厚积薄发的博客

一个热爱技术的程序员

  • 博客(46)
  • 资源 (1)
  • 收藏
  • 关注

原创 547. 朋友圈

解题思路: 深度优先搜索 使用一个访问数组,递归实现代码public static int findCircleNum(int[][] M) { int[] visited=new int[M.length]; int count=0; for(int i=0;i<visited.length;i++){ i...

2019-08-31 22:28:53 59

原创 211. 添加与搜索单词 - 数据结构设计

代码:public class WordDictionary { TrieNode root; public static class TrieNode{ TrieNode[] childs; boolean isEnd; public TrieNode() { this.childs = new T...

2019-08-30 17:52:37 175

原创 jmeter

jmeter使用指南https://www.cnblogs.com/monjeo/p/9330464.html

2019-08-30 16:36:50 66

原创 trie 树

208. 实现 Trie (前缀树) 高级数据结构代码:public class TrieTree { TrieNode root; public TrieTree() { this.root =new TrieNode(); } public class TrieNode{ TrieNode[] childs;...

2019-08-30 11:29:46 59

原创 nginx应用场景

nginx 应用1.静态代理 把静态文件放在nginx,比如图片.2. 反向代理负载均衡 避免单点故障,按照一定的策略分发到不同的服务器上,达到负载的效果. 常用的负载策略: 1.轮询-- 按照顺序访问后端服务器 2.加权轮询 --- 每台服务器的配置可能不同,给配置高,低负载的服务器配置高的权重,给配置低,高负载...

2019-08-29 16:23:09 93

原创 127. 单词接龙

搜索算法,只能使用广度优先搜索解题思路:1.构建无向图,使用广度优先搜索代码: public static void main(String[] args) { String beginWord="hit"; String endWord="cog"; String[] array={"hot","dot","dog","lot",...

2019-08-29 14:16:06 84

原创 200. 岛屿数量

搜索算法解题思路:1.深度优先算法代码 public static void main(String[] args) { char[][] grid={{'1','1','1','1','0'},{'1','1','0','1','0'},{'1','1','0','0','0'},{'0','0','0','0','0'}}; int i = n...

2019-08-29 11:27:23 175

原创 22. 括号生成

解题思路:1.回溯+剪枝代码: public static void main(String[] args) { int n=3; List<String> list = generateParenthesis(n); System.out.println(list); } public static Li...

2019-08-27 16:42:54 58

原创 40. 组合总和 II

解题思路:回溯算法+剪纸代码:public static List<List<Integer>> combinationSum2(int[] candidates, int target) { Arrays.sort(candidates); Set<List<Integer>> set=new H...

2019-08-27 15:52:46 58

原创 90. 子集 II

集合中包含重复元素解决思路:1.回溯思想2.先对数组进行排序,然后使用set代码: public static List<List<Integer>> subsetsWithDup(int[] nums) { Arrays.sort(nums); Set<List<Integer>> set=ne...

2019-08-27 14:10:50 71

原创 46. 全排列

解决办法: 回溯代码:public static void main(String[] args) { int[] nums = {1, 2, 3}; List<List<Integer>> permute = permute(nums); System.out.println(permute); } ...

2019-08-27 10:51:06 154

原创 leetcode 78. 子集

解决方法: 回溯代码:public static List<List<Integer>> subsets(int[] nums) { List<List<Integer>> list=new ArrayList<>(); LinkedList<Integer> linkedList=n...

2019-08-27 10:23:40 54

原创 leetcode 51. N皇后

解决方法:回溯算法代码:public static List<List<String>> solveNQueens(int n) { List<List<String>> list=new ArrayList<>(); int[] result=new int[n]; que...

2019-08-26 16:35:00 86

原创 图深度优先搜索/广度优先搜索

1.图的建立2.图的加边3.图的深度优先算法4.图的广度优先算法代码:public class Graph { /** 图中顶点的个数 */ private int v; /** 邻接链表 */ private LinkedList<Integer>[] adj; private Boolean found=false;...

2019-08-23 15:35:06 145

原创 jvm最让人无奈的痛点---stop the world

1.垃圾回收线程,垃圾回收器,垃圾回收算法的关系 垃圾回收线程和垃圾回收器配合起来使用,使用自己的垃圾回收算法,对指定的内存区域进行垃圾回收. 比如新生代我们会用ParNew垃圾回收器来进行回收,parNew垃圾回收器针对新生代使用复制算法来清理垃圾.2.GC的时候还能继续创建新的对象吗? 不能,在垃圾回收的时候,java系统不能创建对...

2019-08-23 10:39:14 425

原创 disruptor

参考:https://www.jianshu.com/p/d24b2eb4a881

2019-08-22 20:03:09 57

原创 模拟每秒10万并发的BI系统,观察频繁Young GC

代码:vm option-XX:NewSize=104857600 -XX:MaxNewSize=104857600 -XX:InitialHeapSize=209715200 -XX:MaxHeapSize=209715200 -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=15 -XX:PretenureSizeThreshold=31457...

2019-08-22 10:14:24 549

原创 108. 将有序数组转换为二叉搜索树

代码:1.递归+二分查找2.找到中间的元素作为根节点,中间元素左边的作为左子树,中间元素右边的作为右子树.public static void main(String[] args) { int[] nums={-10,-3,0,5,9}; TreeNode treeNode = sortedArrayToBST(nums); Syst...

2019-08-21 17:00:56 52

原创 105. 从前序与中序遍历序列构造二叉树

分而治之思想1.递归实现2.map 数组--- 建立元素与下表的映射关系代码: public static void main(String[] args) { int[] preorder = {3,9,20,15,7}; int[] inorder = {9,3,15,20,7}; TreeNode treeNode = bu...

2019-08-21 11:01:16 44

原创 jstat,jmap,jhat jvm定位线上问题

jstat 可以查看新对象的增速,Young GC触发频率,耗时,对象进入老年代的增速,Full GC的触发频率以及耗时.jmap和jhat 了解JVM的对象分布,哪些对象占据主角,占用了多少空间.1.打印堆内存相关的一些参数 jmap -heap PID2.了解系统运行时的对象分布 jmap -histo PID3.使用jmap生成堆内存转存...

2019-08-20 16:53:05 498

原创 257. 二叉树的所有路径

解题思路递归,根左右输出代码: public static void main(String[] args) { TreeNode treeNode1=new TreeNode(1); TreeNode treeNode2=new TreeNode(2); TreeNode treeNode3=new TreeNode(3); ...

2019-08-20 14:22:37 48

原创 637. 二叉树的层平均值

1.bfs广度优先遍历 升级版代码: public static void main(String[] args) { TreeNode treeNode=new TreeNode(1); treeNode.left=new TreeNode(2); treeNode.right=new TreeNode(3); List&...

2019-08-19 18:23:42 60

原创 110. 平衡二叉树

求树的高度的升级版本求解思路:1.递归求解树的高度2.使用平衡树的高度定义: 左右子树的高度差<=1public static void main(String[] args) { TreeNode treeNode=new TreeNode(1); treeNode.left=new TreeNode(2); treeNod...

2019-08-19 18:03:27 57

原创 对象进入老年代的常见的时机

对象进入老年代的常见的4个时机:1. 躲过15次gc,达到15次高龄之后进入老年代.2.动态年龄判定规则,如果Survivor区域内年龄1+年龄2+年龄3+年龄n的对象总和大于Survivor区的50%,此时年龄n以上的对象会进入老年代,不一定要达到15岁.3.如果一次Young GC后存活对象太多无法进入Survivor区,此时直接进入老年代.4.大对象直接进入老年代...

2019-08-19 14:53:49 1619

原创 golang垃圾回收算法

G1 垃圾回收设计思想: 把内存拆分成很多个小的Region,然后让新生代和老年代各自对应一些Region,回收的时候,尽可能挑选停顿时间最短以及回收对象最多的Region,尽量保证达到我们指定的垃圾回收系统停顿的时间1.region有多少个?每个Region大小是多大? -XX:+UseG1GC------ 指定使用G1垃圾回收器,jvm最多有2048个Regio...

2019-08-19 11:13:46 191

原创 A* 路径搜索算法

1.两个list 集合 一个openlist 代表可到达的格子 一个e代表已到达的格子2. 一个公式 F=G+HF代表 代表从起点格子到达当前格子,在从当前格子到达目标格子的总步数G代表起点格子到达当前格子的代价H代表不考虑障碍的情况下,当前格子到达目标格子的代价.采用的数据结构public static class Grid { publ...

2019-08-17 14:47:17 763

原创 guava CacheStats

参考:http://www.bubuko.com/infodetail-517216.html

2019-08-15 16:15:15 237

原创 springboot +redis+拦截器+注解 实现接口的幂等性

参考文章:https://mp.weixin.qq.com/s?__biz=MzAxNjk4ODE4OQ==&mid=2247486218&idx=2&sn=c849615b2ea76126ed4542d14a3df29c&chksm=9bed2a78ac9aa36e67ad12ef3d0a75934f7e32baed36c98054fac511e271870...

2019-08-15 15:56:31 224

原创 guava 缓存的移除

参考:https://www.jianshu.com/p/b3c10fcdbf0f

2019-08-15 15:35:15 1338

原创 leetcode 94. 二叉树的中序遍历

递归遍历方式:代码 list作为参数在递归中传递public static void main(String[] args) { TreeNode treeNode1=new TreeNode(1); TreeNode treeNode2=new TreeNode(2); TreeNode treeNode3=new TreeNode(...

2019-08-12 09:58:37 126

原创 Java 树的前中后非递归遍历

代码:public static void main(String[] args) { TreeNode treeNode1=new TreeNode(1); TreeNode treeNode2=new TreeNode(2); TreeNode treeNode3=new TreeNode(3); TreeNode tre...

2019-08-11 00:02:14 173

原创 210. 课程表 II

https://leetcode-cn.com/problems/course-schedule-ii/submissions/拓扑排序代码: public int[] findOrder(int numCourses, int[][] prerequisites) { //初始化图 键---值 键是表头节点 值是表边节点 Map<In...

2019-08-09 17:57:11 118

原创 207. 课程表

利用拓扑排序拓扑排序算法:从AOV网 中选择一个入度为0的顶点输出,然后删除此顶点,并删除以此顶点为尾的弧,继续重复此步骤,直到输出全部顶点或者AOV网中不存在入度为0的顶点为止.代码: public boolean canFinish(int numCourses, int[][] prerequisites) { //初始化图 键---值 键是表头节点 ...

2019-08-09 15:58:13 137

原创 图的邻接表存储结构

https://blog.csdn.net/qq_38410730/article/details/79587747

2019-08-09 11:52:30 457

原创 997. 找到小镇的法官

解题思路:根据出入度解决问题入度是N-1,出度是0,代码:public static void main(String[] args) { int N=3; int[][] trust={{1,3},{2,3}}; int judge = findJudge(N, trust); System.out.println(j...

2019-08-09 09:55:02 61

原创 501. 二叉搜索树中的众数

解题思路:1.中序遍历+ 三个变量 1,记录当前元素出现的次数 2.元素出现的最大次数 3.前一个元素代码:public static int curNum=0; public static int maxNum=0; public static int pre=0; public static void main(String[] args...

2019-08-08 14:51:29 56

原创 104. 二叉树的最大深度

题目:https://leetcode-cn.com/problems/maximum-depth-of-binary-tree/submissions/解题思路:二叉树的最大深度= 左右子树的最大深度的最大值+1代码: public static void main(String[] args) { TreeNode p=new TreeNode(1); ...

2019-08-08 11:30:57 79

原创 leetcode 101. 对称二叉树

递归实现解题思路:1.判断根节点是否为null,如果为null.返回true,,如果不为null,比较左右子树是否对称.2.判断左子树的左子树和右子树的右子树 与 左子树的右子树和右子树的左字数 是否相等代码: public static void main(String[] args) { TreeNode p=new TreeNode(1); ...

2019-08-08 10:57:57 50

原创 leetcode 100. 相同的树

解题思路:1.递归先序遍历两个二叉树, 逐个节点遍历.先比较父节点,父节点不相等返回false,父节点相等,比较左子树和右子树,只有左右子树相等,才返回true.否则返回false.代码:public static void main(String[] args) { TreeNode p=new TreeNode(1); p.left=new Tre...

2019-08-08 10:15:28 62

原创 java web拦截器和过滤器

https://www.cnblogs.com/paddix/p/8365558.html

2019-08-06 18:57:23 180

matlab入门

matlab基础在线性代数中的运用,很有价值。

2015-07-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除