摘要:package tree; public class CommonAncestor { /** * 定义TreeNode */ private static class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x
阅读全文
摘要:package bfs; import java.util.LinkedList; import java.util.Queue; public class TreeMinDepth { /** * 定义TreeNode */ private static class TreeNode { int
阅读全文
摘要:package slidewindow; import java.util.HashSet; import java.util.Set; public class MinSubstring { static String minWindow(String s, String t) { // 参数校验
阅读全文
摘要:package dynamic; public class EditDistance { // 最短编辑距离,动态规划 static int minDistance(String s1, String s2) { int m = s1.length(), n = s2.length(); // dp
阅读全文
摘要:package backtrack; import java.util.*; // 关键点:剪枝,树的每层表示字符串的某一位置,不能重复 public class Permute { private static List<String> res = new ArrayList<>(); priva
阅读全文
摘要:package slidewindow;import java.util.ArrayList;import java.util.HashSet;import java.util.List;import java.util.Set;public class ContinuousSequence { p
阅读全文
摘要:public class Solution { public int InversePairs(int[] array) { if(array==null||array.length=start&&j>=mid+1){ if(array[i]>array[j]){ copy[index--]=array[i--]; ...
阅读全文
摘要:public class Solution { public int GetNumberOfK(int[] array , int k) { if(array==null||array.length==0) return 0; int first=getFirstK(array,k); int lask=getLastK(array,k); i...
阅读全文
摘要:注解:初试化静态的instance创建一次。如果我们在Singleton类里面写一个静态的方法不需要创建实例,它仍然会早早的创建一次实例。而降低内存的使用率。 缺点:没有lazy loading的效果,从而降低内存的使用率。 注解:定义一个私有的内部类,在第一次用这个嵌套类时,会创建一个实例。而类型
阅读全文
摘要:public class Solution { public ArrayList GetLeastNumbers_Solution(int [] input, int k) { ArrayList ret = new ArrayList(); if(k > input.length) return ret; PriorityQueue mi...
阅读全文
摘要:public int MoreThanHalfNum_Solution(int [] array) { if(array==null||array.length==0) return 0; int ret=array[0]; int times=1; for(int i=1; iarray.length/2) return ret; else return...
阅读全文
摘要:import java.util.*; public class Solution { public ArrayList Permutation(String str){ ArrayList ret = new ArrayList(); if(str!=null || str.length()>0){ helper(str.toCharArray(...
阅读全文
摘要:public class Solution { public TreeNode Convert(TreeNode pRootOfTree) { if(pRootOfTree == null) return null; if(pRootOfTree.left==null&&pRootOfTree.right==null) return pRootOfTree; ...
阅读全文
摘要:public boolean VerifySquenceOfBST(int[] sequence) { if(sequence == null || sequence.length==0) return false; int start = 0, end = sequence.length-1; return helper(sequence, start, end); }...
阅读全文
摘要:public boolean IsPopOrder(int [] pushA,int [] popA) { if(pushA == null || popA==null || pushA.length==0 || pushA.length!=popA.length) { return false; } Stack stack =...
阅读全文
摘要:public static ArrayList printMatrix(int[][] matrix) { ArrayList ret = new ArrayList(); if(matrix == null||matrix.length==0||matrix[0].length==0) return ret; int m = matrix...
阅读全文
摘要:public class Solution { public void Mirror(TreeNode root) { if(root == null) return; TreeNode temp = root.left; root.left = root.right; root.right = temp; Mirror(root....
阅读全文
摘要:public class Solution { public boolean HasSubtree(TreeNode root1,TreeNode root2) { boolean ret = false; if(root1 == null || root2 == null) return ret; ret = helper(root1,root2); ...
阅读全文
摘要:public class Solution { ArrayList> res = new ArrayList(); ArrayList path = new ArrayList(); public ArrayList> FindPath(TreeNode root,int target) { if (root == null) { ...
阅读全文
摘要:public ArrayList PrintFromTopToBottom(TreeNode root) { ArrayList ret = new ArrayList(); if(root==null) return ret; Queue queue = new LinkedList(); queue.offer(root); while(queue.s...
阅读全文