![](https://img-blog.csdnimg.cn/20190918140145169.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法
各种算法实现
程序员正正
{ 爱学习、知上进、善沟通、懂感恩 }热爱学习,热爱编程,热爱生活,希望通过自己的努力日渐精进,各位小伙伴可以私信我互相交流~~希望可以和大家一起进步!!!
展开
-
递归(Java实现)
递归应用场景![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ms8iZD4Y-1646979599896)(C:\Users\许正\AppData\Roaming\Typora\typora-user-images\image-20220310185925035.png)](https://img-blog.csdnimg.cn/fe0aa4be993547f2ac888ebc7ba5aa13.png?x-oss-process=image/watermark,type_原创 2022-03-11 14:21:27 · 14923 阅读 · 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 · 171 阅读 · 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 · 172 阅读 · 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 · 226 阅读 · 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 · 122 阅读 · 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 · 143 阅读 · 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 · 126 阅读 · 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 · 119 阅读 · 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 · 251 阅读 · 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 · 75 阅读 · 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 · 85 阅读 · 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 · 99 阅读 · 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 · 281 阅读 · 0 评论