[图灵赠书]《算法的乐趣》点评赠书
一本书玩转算法,尽享算法的乐趣!
活动内容
活动时间:2015年4月7日-2015年4月14日
活动形式一 :在新浪微博关注@LINUX中国 @图灵教育 转发本微博即可。
微博地址:http://weibo.com/1772191555/CcbjdbzEI
活动形式二:在Linux中国(http://linux.cn)试读图书样张,并进行评论,说说你喜爱它的理由。
活动奖品:《算法的乐趣》图书一本(共5本)
特此注意:
1、本站论坛评论方式参与的用户,评论前需登录您的Linux中国账号,匿名评论无效
2、微博用户参与活动,活动结束后注意查看@Linux中国\_笑语彦然 微博公布的中奖名单或留意您的微博私信,本站用户参与活动,注意查看您注册Linux中国时所填写的邮箱。 我们会通过微博私信以及电子邮件两种方式获取您的邮寄信息。
基本信息
作者: 王晓华
丛书名: 图灵原创
出版社:人民邮电出版社
ISBN:9787115385376
出版日期:2015 年4月
开本:16开
页码:420
版次:1-1
编辑推荐
CSDN超人气博主、算法专栏达人王晓华力作
淋漓尽致展现算法本质,广泛涵盖常用算法结构及其应用
一本书玩转算法,尽享算法乐趣
内容简介
本书从一系列有趣的生活实例出发,全面介绍了构造算法的基础方法及其广泛应用,生动地展现了算法的趣味性和实用性。全书分为两个部分,第一部分介绍了算法的概念、常用的算法结构以及实现方法,第二部分介绍了算法在各个领域的应用,如物理实验、计算机图形学、数字音频处理等。其中,既有各种大名鼎鼎的算法,如神经网络、遗传算法、离散傅里叶变换算法及各种插值算法,也有不起眼的排序和概率计算算法。讲解浅显易懂而不失深度和严谨,对程序员有很大的启发意义。书中所有的示例都与生活息息相关,淋漓尽致地展现了算法解决问题的本质,让你爱上算法,乐在其中。
本书适合软件开发人员、编程和算法爱好者以及计算机专业的学生阅读。
算法之大,大到可以囊括宇宙万物的运行规律;算法之小,小到寥寥数行代码即可展现一个神奇的功能。算法的应用和乐趣在生活中无处不在:
历法和二十四节气计算使用的是霍纳法则和求解一元高次方程的牛顿迭代法;
音频播放器跳动的实时频谱背后是离散傅立叶变换算法;
DOS时代著名的PCX图像文件格式使用的是简单有效的RLE压缩算法;
RSA加密算法的光环之下是朴实的欧几里德算法、蒙哥马利算法和米勒-拉宾算法;
井字棋、黑白棋、五子棋和俄罗斯方块游戏背后是各种有趣的AI算法;
华容道游戏求解的简单穷举算法中还蕴藏着对棋盘状态的哈希算法;
遗传算法神秘不可测,但用遗传算法求解0-1背包问题只用了60多行代码……
一本书带你走进色彩缤纷的算法世界,让你尽享算法的乐趣。
作者简介
王晓华
2005年毕业于华中科技大学,目前在中兴通讯上海研发中心从事光纤接入网通讯设备开发,担任EPON(以太网无源光网络)业务软件开发经理,参与开发的PON设备在全球部署过亿线,为数亿家庭提供宽带接入服务。
业余时间喜欢研究算法和写作博客(http://blog.csdn.net/orbit),最大的乐趣就是用程序解决生活中的问题:
为了方便使用Visual Studio 6.0开发软件,曾特意编写并开源了一个tabbar插件;
为了文档安全,开发了一个基于layerFSD技术的透明文件加密系统;
使用Source Insight软件觉得不习惯,于是以外挂的形式开发了TabSiPlus插件……
算法可以做的事情还有很多,期待我们会有更多发现!
char name[20];
int next;
int current;
int pCount;
int perfect[SINGLE_COUNT];
}S_PARTNER;
int FindFreePartner(S_PARTNER * singles, int count)
{
int i = 0;
for (i = 0; i < count; i++){
if ((singles.current == -1) && (singles.pCount !=SINGLE_COUNT)){
return i;
}
}
return -1;
}
int GetPerfectPosition(S_PARTNER* single, int id)
{
int i = 0;
for (i = 0; i < SINGLE_COUNT; i++){
if (single.perfect== id){
return i;
}
}
return 0x7FFFFFFF;
}
int main(void)
{
int i = 0;
S_PARTNER man[SINGLE_COUNT];
S_PARTNER women[SINGLE_COUNT];
for (i = 0; i < SINGLE_COUNT; i++){
memset(&man, 0x0, sizeof(S_PARTNER));
memset(&women, 0x0, sizeof(S_PARTNER));
man.current =-1;
women.current= -1;
}
strcpy(man[0].name, "liyapeng");
strcpy(man[1].name, "xietingfeng");
strcpy(man[2].name, "douwei");
strcpy(women[0].name, "wangfei");
strcpy(women[1].name, "zhangbaizhi");
strcpy(women[2].name, "zhouxun");
man[0].p" —— 来自 - 上海 的 Chrome/Windows 用户 于 发表。