博客专栏  >  编程语言   >  算法设计:Java语言描述

算法设计:Java语言描述

利用Java语言的新特性对常见算法的著名问题进行实现,涵盖分治法、动态规划法、贪心算法、回溯法、分支限界法等。

关注
0 已关注
11篇博文
  • Java语言描述:动态规划法之编辑距离问题

    /* * 该程序通过动态规划法解决了编辑距离问题。 * 算法思想: * 将该问题逐步分解为子问题,每次让其规模降1,dist[i][j]标识出了当目标字段长为从第1个字母到 * 第i个字母,源...

    2015-06-08 20:17
    529
  • Java语言描述:动态规划法之最长公共子序列问题

    问题描述:最长公共子序列的问题常用于解决字符串的相似度,是一个非常实用的算法。字符序列的子序列是指从给定字符序列中随意地(不一定连续)去掉若干个字符(可能一个也不去掉)后所形成的字符序列。令给定的字符...

    2015-06-08 15:45
    546
  • Java语言描述:递归与分治策略之合并排序与快速排序

    合并排序: package DivideAndConquer; public class MergeSort { //一定要多传入一个多余的temp数组用于存放排序的中间结果 public st...

    2015-06-07 23:02
    371
  • Java语言描述:递归与分治策略之全排列问题

    全排列问题为各大公司面试中的热门话题。因为难度适中,技能考察一定的算法思想,又因代码简单,不会耽误很长的时间,因而成为面试官们十分青睐的选择。本文采用分支递归策略解决全排列问题(无重复元素)。掌握好该...

    2015-06-07 13:59
    468
  • Java语言描述:分支限界法之01背包问题

    问题描述: 已知:有一个容量为V的背包和N件物品,第i件物品的重量是weight[i],收益是value[i]。 限制:每种物品只有一件,可以选择放或者不放 问题:在不超过背包容量的情况下,最多能获得...

    2015-06-05 17:04
    1916
  • Java语言描述:分支限界法之单源最短路径问题(全网独家)

    单源最短路径问题,即在图中求出给定顶点到其它任一顶点的最短路径。 本代码的测试数据如下,算法思想和说明在下面代码的注释部分: /* * 该代码采用优先队列式的分支限界法解决了单源最短路径问题。...

    2015-06-05 13:40
    1061
  • Java语言描述:回溯法之01背包问题(最易理解的回溯法讲解)

    问题描述: 已知:有一个容量为V的背包和N件物品,第i件物品的重量是weight[i],收益是cost[i]。 限制:每种物品只有一件,可以选择放或者不放 问题:在不超过背包容量的情况下,最多能获得多...

    2015-06-04 20:30
    1851
  • Java语言描述:回溯法之批处理作业调度

    问题描述 给定 n 个作业的集合 j = {j1, j2, ..., jn}。每一个作业 j[i] 都有两项任务分别在两台机器上完成。每一个作业必须先由机器1 处理,然后由机器2处理。作业 j[i]...

    2015-06-04 17:57
    826
  • Java语言描述:回溯法之最优装载问题

    问题描述: 有一批共有 n 个集装箱要装上两艘载重量分别为 c1 和 c2 的轮船,其中集装箱 i 的重量为 w[i], 且重量之和小于(c1 + c2)。装载问题要求确定是否存在一个合理的装载方案可...

    2015-06-04 14:10
    529
  • Java语言描述:回溯法之最小重量机器问题

    设某一机器由n个部件组成,每一种部件都可以从m个不同的供应商处购得。设 wij 是从供应商j 处购得的部件i的重量,cij 是相应的价格。 试设计一个回溯算法,给出总价格不超过d的最小重量机器设计。 ...

    2015-06-04 12:26
    437
  • 最小重量机器设计问题——优先队列式分支限界法

    本代码运用优先队列式分支限界法解决了最小重量机器设计问题。 算法思路: 对于在某一个供应商是否购买某一零件,可以将这个过程抽象化为子集树模型。该树的第i层则代表第i个零件的购买情况,每个商家j对应一棵...

    2015-05-30 17:09
    1692

img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部