![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
zw7534313
这个作者很懒,什么都没留下…
展开
-
最优组合之背包算法
/** * 最优组合之背包算法 * *价值:6,3,5,4,6 *重量:2,2,6,5,4 *载重10 *求最大价值? */class Knapsack { public static void main(String[] args) { int max=10;//载重 int min=1; int[] jz=new int[]{6,3,5,5,6 };//对应的价值 int[]...原创 2013-04-04 12:44:28 · 272 阅读 · 0 评论 -
快速排序
/** * 快速排序:是对冒泡排序的改进。基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小, * 然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 * * 找出a[0]放置的位置(也就是两部分的中间) */public class QuickSort { int arr[]...原创 2013-04-04 23:41:42 · 82 阅读 · 0 评论 -
组合算法之01转换法
import java.util.ArrayList;import java.util.List;/** * 组合算法: 01转换法 * 求从数组a[1..n]中任选m个元素的所有组合(无重复) * * 所谓排列,就是指从给定个数的元素中取出指定个数的元素进行排序。 * 组合则是指从给定个数的元素中仅仅取出指定个数的元素,不考虑排序。 * 解决组合问题的通用算法不外乎递归和回溯(就是穷举...原创 2013-04-07 19:23:02 · 905 阅读 · 0 评论 -
组合算法之递归
/** * 组合算法: * 递归 * m个物体取n个的组合(m>=n,n>1) * 根据前2个数相邻,或者相隔v个数组合n个数 */public class ZH { int arr[]=new int[]{2,3,6,5,4};//长度为5的数组取3个组合共5*4*3/3/2=10种(没有排列) int n=3;//n>=2 int m=arr.length; publi...原创 2013-04-07 22:04:27 · 187 阅读 · 0 评论 -
堆排序
package cn.arith.zuiyou;public class HeapSort { /**堆排序是稳定log(N)复杂度的算法。堆排序需要维护的堆的性质要满足:1.是一棵二叉树,而且是完全二叉树(除了最后一层都是满的,最后一层先把左边填满)2.如果是最大堆,要保证父节点的值大于两个子节点的值。(最小堆同理)二叉树的数据结构是用数组来表示的,完全二叉树的性质有 父节点坐...原创 2013-04-10 22:58:29 · 89 阅读 · 0 评论 -
负载均衡算法
负载均衡算法 据目前的知识水平,并行可以分为数据并行与任务并行。数据并行是将数据分发,按块或者不同的流在每个进程或者每个线程中进行处理,这种并行对数据的独立性要求比较明显。任务并行则是将一个任务分为可以同时进行的几个子任务,进行处理。让人头疼的是如何在不同的机器或者核中使其任务平均。这就引入了负载均衡相关的算法。负载均衡算法主要分为两种,持续性和非持续性的负载均衡。持续性是指特定...原创 2018-04-13 20:24:06 · 185 阅读 · 0 评论