编程之美
littlestream9527
Hew out of the mountain of despair a stone of hope!
展开
-
cpu曲线
/*#include "Windows.h"#include "stdlib.h"#include "math.h" const double SPLIT = 0.01;const int COUNT = 2000;const double PI = 3.14159265;const int INTERVAL = 100; //每个抽样点对应的时间片 //程序原创 2012-08-28 22:06:09 · 510 阅读 · 0 评论 -
编程之美之计算字符串的相似度
三种方式实现 递归,备忘录,动态规划// 编程之美之计算字符串的相似度.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include #define N1 8#define N2 5using namespace std;int culdismemo[N1+1][N2+1];//加一就好使了 why?见下面分析int原创 2012-11-13 20:56:38 · 492 阅读 · 0 评论 -
程序员面试100题之16斐波那契 编程之美2.09
时间复杂度为O(log(n))// 程序员面试100题之16斐波那契数列.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include using namespace std;struct Matrix2by2{ int value00,value01,value10,value11; Matrix2by2(int v00,int v01,in原创 2012-11-29 21:59:59 · 959 阅读 · 0 评论 -
编程之美3.8 3.9 3.10二叉树问题实现
// 编程之美之求二叉树节点的最大距离.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include //for the use of the layer print#include using namespace std;#define N 10struct TNode{ char chValue; TNode *lef原创 2012-11-18 15:35:08 · 866 阅读 · 0 评论 -
编程之美之烙饼问题
// 编程之美之一摞烙饼.cpp : 定义控制台应用程序的入口点。// 不同的程序会得到不同的结果吗?有个程序能得到不同的结果,但后来证明他的结果是错的//该算法有点在于在于找最少的交换次数,不是在于用最少的时间进行排序,此算法的排序时间不是最少的。因为算法的查找时间太长了。#include "stdafx.h"#include #include #include #include原创 2012-09-15 10:44:45 · 1190 阅读 · 0 评论 -
编程之美1.11之 石头游戏
http://hi.baidu.com/zealot886/item/94e9630ae4ea7c8c3d42e271NIM(1) 一排石头的游戏 N块石头排成一行,每块石头有各自固定的位置,两个玩家一次取石头每个玩家每次可以取其中任意一块石头,或者相邻的两块石头,石头在游戏过程中不能移位(即编号不会改变),最后能将剩下的石头一次取光的玩家获胜.如果是你先取,这转载 2013-06-09 22:07:38 · 2517 阅读 · 3 评论 -
编程之美 取石子游戏 续
http://hi.baidu.com/mcgrady32303/item/eded0cfac2656a713d198b37取石子问题有一种很有意思的游戏,就是有物体若干堆,可以是火柴棍或是围棋子等等均可。两个人轮流从堆中取物体若干,规定最后取光物体者取胜。这是我国民间很古老的一个游戏,别看这游戏极其简单,却蕴含着深刻的数学原理。下面我们来分析一下要如何才能够取胜。(一)巴转载 2013-06-10 22:23:15 · 1360 阅读 · 0 评论 -
【编程之美】金刚坐飞机问题
题目描述现在有一架飞机要起飞,乘客们正准备按机票号码(1,2,3...,N)一次排队登机。突然来了一只大猩猩(金刚)。他也有机票,但是他插队第一个登上了飞机,然后随意的选择了一个座位坐下了。根据社会的和谐程度,其他的乘客有两种反应:1.乘客们都义愤填膺,“既然金刚同志都不守规矩,为什么我要遵守?”他们也随意的找位置坐下,并且坚决不让座位给其他乘客。2.乘客们虽然感到愤怒,但转载 2013-07-11 15:03:18 · 740 阅读 · 1 评论 -
编程之美 买票找零 卡特兰数
http://blog.csdn.net/wangzhewang/article/details/6842844http://www.jtben.com/document/1250265题目描述:假设有2N个人在排队买票,其中有N个人手持50元的钞票,另外有N个人手持100元的钞票,假设开始售票时,售票处没有零钱,问这2N个人有多少种排队方式,不至使售票处出转载 2013-07-11 17:08:31 · 1974 阅读 · 1 评论 -
爱你因为更懂你(编程之美之数组分隔)
数组分隔这题 之前的类似的有背包问题,还有饮料问题。{ isok[0][0]=true; for(k=1;k for(i=min(k,n);i>=1;i--) for(v=1;v if(v>=Arr[k]&&isok[i-1][v-Arr[k]]) isok[i][v] = true;}这原创 2012-11-12 19:19:57 · 633 阅读 · 1 评论 -
编程之美之最短摘要生成的困惑
// 编程之美之最短摘要的生成.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include #include #define N 3using namespace std;//该算法对每个关键字出现的位置进行入队列操作O(m*n),然后操作队列O(n*length(第一个队列的长度)),队列处理应该仍然可以进行优化,怎优化呢原创 2012-11-12 18:42:42 · 662 阅读 · 0 评论 -
编程之美链表相交和环问题
http://blog.csdn.net/tmljs1988/article/details/7251469转载 2012-11-10 22:31:03 · 351 阅读 · 0 评论 -
编程之美之 饮料供货 之 动态规划算法和备忘录算法实现
//#include "stdafx.h"#include #include #include //#include #define V 64// total volume 不一定恰好能放得下,可能有剩余的空间什么也放不了#define N 7// the number of the beverageusing namespace std;int opt[V+2][N+2];原创 2012-09-17 22:06:21 · 1721 阅读 · 0 评论 -
点集中的最近点 最远点对
点集中的最近点http://www.cnblogs.com/king1302217/archive/2010/07/08/1773413.html2、分治法 1)算法描述:已知集合S中有n个点,分治法的思想就是将S进行拆分,分为2部分求最近点对。算法每次选择一条垂线L,将S拆分左右两部分为SL和SR,L一般取点集S中所有点的中间点的x坐标来划分,这样可以保证SL转载 2012-10-29 21:11:11 · 3465 阅读 · 0 评论 -
编程之美 之 找最大的K个数 堆和快速选择 实现
多种方法 http://blog.csdn.net/v_july_v/article/details/6370650在增加一种:败者树http://blog.csdn.net/fisher_jiang/article/details/2473698下面是自己实现的两种:// 编程之美-寻找最大的K个数.cpp : 定义控制台应用程序的入口点。//#include "stdafx.原创 2012-10-26 21:11:20 · 1190 阅读 · 0 评论 -
编程之美 快速寻找满足条件的两个或多个数
寻找满足条件的两个或多个数http://blog.csdn.net/v_JULY_v/article/details/6419466第一节、寻找满足条件的两个数第14题(数组):题目:输入一个数组和一个数字,在数组中查找两个数,使得它们的和正好是输入的那个数字。要求时间复杂度是O(n)。如果有多对数字的和等于输入的数字,输出任意一对即可。例如输入数组1、转载 2012-10-31 21:59:57 · 808 阅读 · 0 评论 -
《编程之美》 符合条件的数
证明存在:http://blog.csdn.net/jcwKyl/article/details/3859155自己的代码 M取余数能算的数比较大:int _tmain(int argc, _TCHAR* argv[]){ int N; // 用栈存储似乎是个错误,费老劲了 cout<<" input N "<<endl; cin>>N; stack *bigInt = new s原创 2012-10-23 21:18:53 · 551 阅读 · 0 评论 -
《编程之美》 查找最大(小)的k个元素
http://blog.csdn.net/v_july_v/article/details/6370650http://blog.csdn.net/insistgogo/article/details/7689297下面,我试图用最清晰易懂,最易令人理解的思维或方式阐述有关寻找最小的k个数这个问题(这几天一直在想,除了计数排序外,这题到底还有没有其它的O(n)的算法? )。希望,有转载 2012-10-23 21:58:46 · 13301 阅读 · 0 评论 -
编程之美之最长递增子序列实现
// 编程之美之最长递增子序列.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include using namespace std;#define N 8#define MAXN 1003int A[MAXN];int MaxV[MAXN];// 动态规划算法O(nlogn)/*int _tmain(int ar原创 2012-11-06 21:25:28 · 703 阅读 · 1 评论 -
计算字符串的相似度--编程之美3.3
计算字符串的相似度--编程之美3.3http://www.cnblogs.com/yujunyong/articles/2004724.html许多程序会大量使用字符串。对于不同的字符串,我们希望能够有办法判断其相似程序。我们定义一套操作方法来把两个不相同的字符串变得相同,具体的操作方法为: 1.修改一个字符(如把“a”替换为“b”); 2.增加一个字符(如把“转载 2012-11-09 21:42:11 · 345 阅读 · 0 评论 -
编程之美2.18——数组分割
http://blog.csdn.net/linyunzju/article/details/7729774问题:1. 有一个无序、元素个数为2n的正整数数组,要求:如何能把这个数组分割为两个子数组,子数组的元素个数不限,并使两个子数组之和最接近。2. 有一个无序、元素个数为2n的正整数数组,要求:如何能把这个数组分割为元素个数为n的两个数组,并使两个子数组之和最接近。转载 2013-07-05 16:51:50 · 610 阅读 · 0 评论