摘要:package com.zhangke.spring.sky.yuyin;import java.util.ArrayList;import java.util.List;import android.app.Activity;import android.content.Intent;import android.content.pm.PackageManager;import android.content.pm.ResolveInfo;import android.content.res.ColorStateList;import android.os.Bundle;import and
阅读全文
摘要:View Code 1 #include<IOSTREAM.H> 2 #include <IOMANIP.H> 3 4 /************************************************************************/ 5 /* 6 活动选择问题:对几个互相竞争的活动进行调度,它们都要求以独占的方式使用某一公共资源 7 。调度的目标是找出一个最大的相互兼容的活动集合。假设有一个需要使用某一资源的n个活动 8 组成的集合S={a1,a2,a3,...,an}。该资源一次只能被一个活动占用。每个活动ai有个开始时间 9 ..
阅读全文
摘要:问题:考虑在一个打印机上整齐地打印一段文章的问题。输入的正文是n个长度分别为L1、L2、……、Ln(以字符个数度量)的单词构成的序列。我们希望将这个段落在一些行上整齐地打印出来,每行至多M个字符。“整齐度”的标准如下:如果某一行包含从i到j的单词(i<j),且单词之间只留一个空格,则在行末多余的空格字符个数为 M - (j-i) - (Li+ …… + Lj),它必须是非负值才能让该行容纳这些单词。我们希望所有行(除最后一行)的行末多余空格字符个数的立方和最小。请给出一个动态规划的算法,来在打印机整齐地打印一段又n个单词的文章。分析所给算法的执行时间和空间需求。分析:构建数组a[i]代表
阅读全文
摘要:View Code #include<IOSTREAM.H>#include <IOMANIP.H>#include <STRING.H>#include <STDLIB.H>#include <stdio.h>/************************************************************************//* 问题: 假设有一台机器,以及在此机器上处理的n个作业a1,a2,...an的集合。每隔作业aj有一个处理时间tj,效益pj,以及最后期限dj。机器在一个时刻只能处理一个作业,
阅读全文
摘要:View Code #include<IOSTREAM.H>#include <IOMANIP.H>#include <STRING.H>#include <STDLIB.H>#include <stdio.h>/************************************************************************//* 0-1背包问题是一个经典的动态规划问题,问题定义如下:有n个物品,其重量分别为W={w1, w1, w3, ... wn},其价值分别为V={v1, v2, v3, .. v
阅读全文
摘要:01背包问题:1.递归思想0- 1 背包问题如果采用递归算法来描述则非常清楚明白, 它的算法根本思想是假设用布尔函数knap( s, n) 表示n 件物品放入可容质量为s 的背包中是否有解( 当knap 函数的值为真时说明问题有解,其值为假时无解) . 我们可以通过输入s 和n 的值, 根据它们的值可分为以下几种情况讨论:( 1) 当s= 0时可知问题有解, 即函数knap( s, n) 的值为true; ( 2) 当s< 0 时这时不可能,所以函数值为false; ( 3) 当输入的s> 0 且n< 1 时即总物品的件数不足1, 这时函数值为false,只有s> 0
阅读全文
摘要:View Code #include<IOSTREAM.H>#include <IOMANIP.H>#include <STRING.H>#include <STDLIB.H>//动态规划:需要一个数组b[n],其中b[i]是以x[i]结尾最长子串的长度,而b[i+1]=max(b[k]&&x[i+1]>x[k]}+1void main(){ char array[]="abcdgdfgdggefrte"; int *p=(int*)malloc(strlen(array)*sizeof(int)); p
阅读全文