自己也是才听老师的介绍,才从网上下载下《编程之美》这本书来阅读。 浏览其目录,发现这样的一本书正时我这个阶段所最需要的,现在大二,已经有了一定的基础,所以再看以前那些基础教程总觉得,太简单了。但是看太难的东西,又有好些知识没有学过,不理解。所以想《编程之美》这样一本,用到的知识比较基础,但是解...
分类:
其他好文 时间:
2015-06-22 09:51:35
阅读次数:
156
求二进制数中1的个数继京东618店庆时买的《编程之美》这本书,翻了翻,发现里面的题还是挺有意思的,看起来我们觉得很简单的题目,解法却有很多很多种,真是一个比一个巧妙,于是,决定记录一下。书中的题目如下
对于一个字节(8bit)的无符号数,求其二进制表示中“1”的个数,要求算法的执行效率尽可能高。...
分类:
其他好文 时间:
2015-06-22 01:14:11
阅读次数:
117
最大子数组的和 在给定的一个数组中,找出连续的一部分数组,使其中的元素和最大。例如输入1,-2,5,3,-3,7,-2,-1,输出的最大子数组和为12。 ①如果什么都不考虑,用最直接的办法来求解,即三重for循环来暴力求结果,该算法的时间复杂度为O(n^3)代码如下://本段代码引自编程之美
int MaxSum(int* A, int n)
{
int maximum = -INF;...
分类:
编程语言 时间:
2015-06-21 15:49:47
阅读次数:
124
BookmarksBookmarks 书签栏 笔记 Blog 首页 - 老赵点滴 - 追求编程之美 demo@virushuo ...
分类:
其他好文 时间:
2015-06-19 22:55:42
阅读次数:
1792
http://blog.csdn.net/hitwhylz/article/details/10122617看到这种要计算二进制什么鬼的,就自然而然想到用位运算//二进制中1的个数#include using namespace std;int main(){ int num,count=0; ci...
分类:
其他好文 时间:
2015-06-14 15:10:37
阅读次数:
123
拿到这个问题,我的第一反应是用贪心算法,优先满足不同种类多的,这样打的折扣比价多。但是,看了书中的分析发现,*我们设定的贪心策略实际上是有问题的, ie 在买 5 + 3 本的时候会出错。
看到这里,书上说可以利用改进的贪心算法,感觉如果换了相应的折扣数量,可能又会有不同的结果了。因而,没有深入的研究下去。
既然,贪心算法不可行,那就用动态规划呗。
这里的动态规划思路很简单不过写起来有些复杂。...
分类:
其他好文 时间:
2015-06-13 00:01:17
阅读次数:
423
拿到这个问题,第一反应是利用分治的算法思想, 每次把当前的最大的一块烙饼放到指定位置,这样的思想非常简单,实现也非常容易。但是这只是提供了,问题的一个可行解,看完书中的内容之后发现,题目中要求的是最优化的输出过程,我们的这种方法显然没有考虑到优化!!其实,我觉得就算我看到了这个最优化输出的要求,估计也想不到书中的设计思想的了。过段时间,等自己把书中的思想忘掉之后,再看看能不能想到这种算法思...
分类:
编程语言 时间:
2015-06-11 19:32:40
阅读次数:
122
思路很简单,但是要实现只用一个字节还是有些难度的,一开始我在试图寻找有没有什么方法可以定义出2bit的变量,因为如果我们可以定义出这样的变量,利用循环很容易就能求解了。可惜的是,没有能够找到 !!于是,只能硬着头皮写,为避免main过长,用到了两个宏定义,写完之后看到参考答案,感觉太巧妙了,瞬间学习了新技能,从答案来看 似乎只有在自定义数据类型的时候才能指定 char 这些数据类型在编译器...
分类:
其他好文 时间:
2015-06-10 19:31:22
阅读次数:
119
【申明:本文仅限于自我归纳总结和相互交流,有纰漏还望各位指出。 联系邮箱:Mr_chenping@163.com】
题目:
最大公约数问题
题目分析:
编程之美上的经典算法
算法实现:
#include
int gcd(int x, int y)
{
return ((!y) ? x: gcd(y, x%y));
}
int main(int argc, c...
分类:
编程语言 时间:
2015-06-10 14:17:21
阅读次数:
130