2013年3月26日

摘要: 贪心算法一、基本概念:所谓贪心算法是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。贪心算法没有固定的算法框架,算法设计的关键是贪心策略的选择。必须注意的是,贪心算法不是对所有问题都能得到整体最优解,选择的贪心策略必须具备无后效性,即某个状态以后的过程不会影响以前的状态,只与当前状态有关。所以对所采用的贪心策略一定要仔细分析其是否满足无后效性。二、贪心算法的基本思路:1.建立数学模型来描述问题。2.把求解的问题分成若干个子问题。3.对每一子问题求解,得到子问题的局部最优解。4.把子问题的解局部最优解合成原来解问题的一 阅读全文
posted @ 2013-03-26 19:58 只差一个转身的距离 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 杭电ACM第1249题,关于N个三角形能把平面分成几块的问题。递推公式:t(1)=2t(n)=t(n-1)+6*(n-1)杭电1249代码如下:#include<stdio.h>#include<stdlib.h>int main(){ int t; scanf("%d",&t); while(t--) { int n; scanf("%d",&n); long int a[10001]; a[1]=2; int i; for(i=2;i<=n;i++) { a[i]=a[i-1]+6*(i-1); } pr 阅读全文
posted @ 2013-03-26 19:39 只差一个转身的距离 阅读(151) 评论(0) 推荐(0) 编辑

导航