摘要: class Solution { public String getHint(String secret, String guess) { int bull = 0; int cow = 0; int[] mem = new int[10]; for(int i =0; i<secret.lengt 阅读全文
posted @ 2019-11-24 16:27 La_Campanella 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 一道难点并不在于编程和逻辑的算法题,更像是脑筋急转弯 从左右两侧向中间移动两根指针,同时保留两侧最大值 class Solution { public int trap(int[] height) { if (height==null||height.length < 3) { return 0; 阅读全文
posted @ 2019-11-23 16:39 La_Campanella 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 有序列表merge核心思想-->谁小就选谁加入结果 所以这道题的最核心问题也就找到了,就是要找到任意时刻的最小元素。所以需要维持一个数据结构,随时返回其中最小的元素,也就是最堆 然后这道题的难点就变成了写最小堆的comparator 下方代码中有两种我比较喜欢的方式 class Solution { 阅读全文
posted @ 2019-11-21 05:32 La_Campanella 阅读(84) 评论(0) 推荐(0) 编辑
摘要: level order traversal solution in Java public class Solution { public List<Integer> rightView(TreeNode root) { // Write your solution here List<Intege 阅读全文
posted @ 2019-11-20 09:02 La_Campanella 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 课程安排本质上是一道拓扑排序题。 拓扑排序即位找出有向图的顶点的线性排序,使得对于从顶点到顶点的每个有向边,在排序中都在之前。 性质: 当且仅当一个有向图没有环(DAG)才有可能有拓扑排序。 任何DAG具有至少一个拓扑排序,并且已知这些算法用于在线性时间内构建任何DAG的拓扑排序。 在图论中,由一个 阅读全文
posted @ 2019-11-18 15:15 La_Campanella 阅读(124) 评论(0) 推荐(0) 编辑
摘要: class Solution { // using backtracking to build solution set; // traverse through the candidates list and try using each element as start point for bu 阅读全文
posted @ 2019-11-17 14:38 La_Campanella 阅读(126) 评论(0) 推荐(0) 编辑