
算法
各种算法实现
程序员正正
{ 爱学习、知上进、善沟通、懂感恩 }热爱学习,热爱编程,热爱生活,希望通过自己的努力日渐精进,各位小伙伴可以私信我互相交流~~希望可以和大家一起进步!!!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
LeetCode 热题 100 题解记录
LeetCode Hot 100题个人总结题解,简洁高效,通俗易懂,精选最优解题思路,纯享题解,祝你更快刷题!原创 2025-04-09 10:11:48 · 674 阅读 · 0 评论 -
递归(Java实现)
递归应用场景
简介常用排序算法总结和对比冒泡排序代码实现package com.xz.sort;import java.util.Arrays;/** * @author 许正 * @version 1.0 */public class BubbleSort { public static void main(String[] args) {// int[] arr = {3, 9, -1, 10, 20};// System.out.println(原创 2022-03-12 21:55:46 · 227 阅读 · 0 评论 -
四大查找算法(Java实现)
查找算法介绍线性查找代码实现package com.xz.search;/** * @author 许正 * @version 1.0 */public class SeqSearch { public static void main(String[] args) { int[] arr = {1, 9, 50, 4, -1, -45, 51, 11}; int i = seqSearch(arr, 11); if (i == -原创 2022-03-12 21:58:08 · 231 阅读 · 0 评论 -
二分查找算法(非递归)
简介代码实现package com.xz.binarysearchnorecursion;/** * @author 许正 * @version 1.0 */public class BinarySearchNoRecur { public static void main(String[] args) { //测试 int[] arr = {1, 3, 8, 10, 11, 67, 100};// int arr[] = {1, 2原创 2022-03-16 21:53:11 · 293 阅读 · 0 评论 -
分治算法(汉诺塔示例)
简介基本步骤设计模式算法实践–汉诺塔问题代码实现package com.xz.divideandconquer;/** * @author 许正 * @version 1.0 */public class HanoiTower { public static void main(String[] args) { hanoiTower(3, 'A', 'B', 'C'); } //汉诺塔的移动的方法 //使用分治算法 pu原创 2022-03-16 22:12:24 · 189 阅读 · 0 评论 -
动态规划(背包问题示例)
简介代码实现–背包问题package com.xz.dynamic;/** * @author 许正 * @version 1.0 */public class KnapsackProblem { public static void main(String[] args) { int[] w = {1, 4, 3};//物品的重量 int[] val = {1500, 3000, 2000}; //物品的价值 这里val[i] 就是前面讲的v[i]原创 2022-03-17 09:35:41 · 209 阅读 · 0 评论 -
KMP算法解决字符串匹配问题
简介暴力求解–字符串匹配问题package com.xz.kmp;/** * @author 许正 * @version 1.0 */public class ViolenceMatch { public static void main(String[] args) { String str1 = "ABCDEEBF DASFJAISDOFIKCKDCO"; String str2 = "DAS"; System.out.print原创 2022-03-17 11:00:40 · 174 阅读 · 0 评论 -
贪心算法(电台覆盖问题示例)
简介集合覆盖问题思路分析代码实现package com.xz.greedy;import java.util.ArrayList;import java.util.HashMap;import java.util.HashSet;/** * @author 许正 * @version 1.0 */public class GreedyAlgorithm { public static void main(String[] args) { //创建广原创 2022-03-17 20:31:00 · 170 阅读 · 0 评论 -
普利姆算法(最小生成树示例)
最小生成树概念普利姆算法简介代码实现package com.xz.prim;import java.util.Arrays;/** * @author 许正 * @version 1.0 */public class PrimAlgorithm { public static void main(String[] args) { //测试看看图是否创建ok char[] data = new char[]{'A', 'B', 'C', 'D'原创 2022-03-17 22:07:25 · 300 阅读 · 0 评论 -
克鲁斯卡尔算法(公交站问题)
介绍代码实现package com.xz.kruskal;import java.util.Arrays;/** * @author 许正 * @version 1.0 */public class KruskalCase { private int edgeNum; //边的个数 private char[] vertexs; //顶点数组 private int[][] matrix; //邻接矩阵 //使用 INF 表示两个顶点不能连通 p原创 2022-03-18 16:47:16 · 126 阅读 · 0 评论 -
迪杰斯特拉算法(最短路径)
介绍算法过程代码实现package com.xz.dijkstra;import java.util.Arrays;public class DijkstraAlgorithm { public static void main(String[] args) { char[] vertex = { 'A', 'B', 'C', 'D', 'E', 'F', 'G' }; //邻接矩阵 int[][] matrix = new int原创 2022-03-18 17:07:08 · 138 阅读 · 0 评论 -
弗洛伊德算法(各个点最短路径)
介绍代码实现package com.xz.floyd;import java.util.Arrays;/** * @author 许正 * @version 1.0 */public class FloydAlgorithm { public static void main(String[] args) { // 测试看看图是否创建成功 char[] vertex = { 'A', 'B', 'C', 'D', 'E', 'F', 'G' };原创 2022-03-18 17:34:04 · 151 阅读 · 0 评论 -
马踏棋盘算法(贪心算法优化)
算法介绍和规则演示思路和步骤代码实现package com.xz.horse;import java.awt.Point;import java.util.ArrayList;import java.util.Comparator;public class HorseChessboard { private static int X; // 棋盘的列数 private static int Y; // 棋盘的行数 //创建一个数组,标记棋盘的各个位置是否被访原创 2022-03-18 21:31:41 · 345 阅读 · 0 评论