- 博客(10)
- 收藏
- 关注
原创 Redis集群批量set Key工具类
package com.pingan.pss.sales.ucenter.common.util;import com.alibaba.fastjson.JSONObject;import org.apache.ibatis.reflection.SystemMetaObject;import org.springframework.beans.factory.InitializingBean;import org.springframework.beans.factory.annotation.
2021-08-19 16:12:43
1126
原创 kmp算法最优解
//kmp 算法public class KMP { public int getMinKmp(String st1, String st2){ if (st2.length() > st1.length()){ return -1; } char[] str = st1.toCharArray(); char[] match = st2.toCharArray(); int[] nex
2021-07-04 18:16:28
103
原创 O(1)并查集
import java.util.ArrayList;import java.util.HashMap;import java.util.List;//并查集public class UnionFind {public static void main(String[] args) { ArrayList<Integer> objects = new ArrayList<>(); objects.add(1); objects.add(2); .
2021-06-20 22:18:16
186
原创 狄克斯特拉最短路径问题
import java.util.*;//狄克斯特拉最短路径问题public class MinPath { //图 class Graph { public List<com.pingan.sourcecode.graph.Node> nodesList; public List<com.pingan.sourcecode.graph.Edge> edgesList; Graph(List nodesL
2021-06-20 22:18:03
120
原创 暴力递归解决汉诺塔问题
//暴力递归 解决汉诺塔问题public class TowerOfHanoi { public void func(int N,String from, String to, String others){ if (N == 1){ System.out.println("move " + N + " from " + from + " to " + to); return; }{ fun
2021-06-20 22:17:49
113
原创 背包问题—暴力递归 -》记忆化搜索 -》动态规划(待补充)
public class KnapsackProblem{ //暴力递归 public int process(int[] w, int[] v, int index, int freeSize){ //base case if (freeSize <= 0 || index == w.length){ return 0; } int p1 = Integer.MIN_VALUE;
2021-06-20 22:17:34
135
原创 归并排序java解法
package com.sourcecode;import java.util.Arrays;//归并排序public class ArraySort {public static void main(String[] args) { int[] arr = {2,7,6,4,5,8,3,11,1,19,1,17,16}; int[] tmp = new int[arr.length]; sortIfNecessary(arr,0,arr.length -1,tmp);
2021-06-03 00:31:18
163
原创 用两个栈(Stack)组成的队列(Queue)
import java.util.Stack;//用两个栈实现一个队列public class StackToQueue {//栈的特点:先进后出,队列的特点,先进先出。//设计思路:倒栈private Stack<Integer> stackLift = new Stack();private Stack<Integer> stackRight = new Stack();public void add(int in){ stackLift.push(in
2021-05-04 21:15:42
88
原创 算法:实现一个栈 获取栈中最小元素的时间复杂度为O(1)
import java.util.Stack;//实现一个栈 获取栈中最小元素的时间复杂度为O(1)public class MinStack {private static Stack<Integer> stackData = new Stack<>();private static Stack<Integer> stackMin = new Stack<>();public int pop(){ Integer popData = s
2021-04-27 10:06:13
323
原创 算法:最长不重复子串
//给定一个字符串,找出其中的最长不重复子串public class LongestSubstring {public int longestSubSubstring(String s){//设计思路:滑动窗口+指针。 滑动窗口保存不重复子串,指针依次向后移动。int longestLength = 0;if(s.isEmpty()){return longestLength;}StringBuilder slidingWindow = new StringBuilder();int p;
2021-04-27 10:05:33
132
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人