自1984年NOI在中国计算机联合会成立以来,通过比赛培养和发现了一大批计算机爱好者。各种基于算法的比赛也吸引着越来越多的年轻人参与其中:在中国,各省都有信息学全国奥赛(与全国中学生生物联赛、中国物理奥赛、全国高中生数学联赛、全国高中生化学竞赛一起被称为中国影响力最大的“五奥”的NOIP);国际上有国际信息学奥林匹克竞赛(IOI)、亚洲及太平洋信息学奥林匹克竞赛(APIO)、acm国际大学生编程竞赛(ACM/ICPC)等。
各类算法竞赛要求参赛选手不仅要有深厚的计算机算法知识、快速准确的编程能力和创造性思维,还要有团队合作精神和抗压能力。因此,编程竞赛越来越受到高校、IT公司等社会各界的认可和关注。编程竞赛的获胜者受到世界知名的信息技术公司的青睐,如微软、谷歌、百度和脸书。
那么如何申请信息学奥林匹克?
随着暑假的临近,我们为《编程竞赛宝典》准备了5天的学习计划。这本书是信息学奥数高级教练精心编写的,涉及到算法竞赛所需的C语法知识和简单算法学习。
— 01 —
为什么要学算法?
“算法”这个词来自算术。具体来说,算法就是从已知中推导出未知的运算过程。后来,人们把它推广到一般过程,即称为进行某种工作的方法和步骤的算法。
经常有人说:“不用学习算法,我还是可以通过编程来开发软件。”那么,为什么要研究算法呢?
首先,一个程序需要完成一个任务,这个任务大多涉及算法的实现,这直接决定了程序的优劣。因此,算法是程序的“灵魂”。只有学好算法,才能设计出更优秀的软件,才能非常有效地实现复杂的功能。
其次,算法是对事物本质的数学抽象。真正懂计算机的人,不仅能用科学家严谨的思维去验证,还能用工程师务实的手段去解决问题。学习算法是培养逻辑推理能力非常好的方法之一。
最后,学习算法本身是非常有趣和有趣的。所谓“艺术是技术中的极致”,当一个人真正沉浸在算法研究中时,他会感受到算法的细腻艺术美,被其惊人的运行速度和构思深深震撼,体验到一种难以形容的美感和快感。
当然,算法的“优雅”和“精致”固然吸引人,但也让很多人望而生畏。事实证明,很多人学习算法是非常困难的。
在算法竞赛领域,找一个合适的导师是必然的。大多数人,在大多数情况下,都需要自己摸索。
新推出入门级算法大赛《编程竞赛宝典:C 语言和算法入门》,让读者一步步掌握C语言和算法知识,正确进入算法大赛。
本书以Dev-C作为C语言的开发环境。首先带领读者入门C语言,然后逐步讲解C语言和算法知识,从简单到深入,安排竞赛模拟和阶段检测,让读者及时评价自己的学习效果。
《编程竞赛宝典:C 语言和算法入门》
-sizing: border-box; height: 164px; border: 1px solid #e8e8e8; position: relative; padding: 20px 94px 12px 180px; overflow: hidden; } .pgc-card::after { content: " "; display: block; border-left: 1px solid #e8e8e8; height: 120px; position: absolute; right: 76px; top: 20px; } .pgc-cover { position: absolute; width: 162px; height: 162px; top: 0; left: 0; background-size: cover; } .pgc-content { overflow: hidden; position: relative; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); } .pgc-content-title { font-size: 18px; color: #222; line-height: 1; font-weight: bold; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .pgc-content-desc { font-size: 14px; color: #444; overflow: hidden; text-overflow: ellipsis; padding-top: 9px; overflow: hidden; line-height: 1.2em; display: -webkit-inline-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; } .pgc-content-price { font-size: 22px; color: #f85959; padding-top: 18px; line-height: 1em; } .pgc-card-buy { width: 75px; position: absolute; right: 0; top: 50px; color: #406599; font-size: 14px; text-align: center; } .pgc-buy-text { padding-top: 10px; } .pgc-icon-buy { height: 23px; width: 20px; display: inline-block; background: url(https://lf6-cdn-tos.bytescm.com/obj/cdn-static-resource/pgc/v2/pgc_tpl/static/image/commodity_buy_f2b4d1a.png); } 编程竞赛宝典 C 语言和算法入门 ¥89.9 购买
编程类竞赛活动受各级各类学校重视,受青少年学生欢迎。
本书以Dev-C 为C 语言的开发环境,首先带领读者入门C 语言,然后循序渐进、由浅入深地讲解C 语言的基本结构、数组、函数、指针、结构体、位运算等知识,并编排了竞赛模拟、阶段检测等内容,使读者能及时评估自己的学习效果。
本书作者:
本书作者张新华,毕业于浙江大学和厦门大学。中学高级教师,信息学资深教练。长期从事中小学信息学竞赛辅导工作,无论是在信息学还是在教学上都有着数十年的深厚积淀,获得过2009年普通高中信息技术现场优质课比赛全国一等奖获得者。培养的学生更多次获得全国青少年信息学奥林匹克联赛国家一等奖及亚洲与太平洋地区信息学奥林匹克竞赛奖牌。
开发了三维图形化C 编程工具Dev-C 智能开发平台和Python 可视化界面设计软件Visual Python。
— 02 —
本书的特色
1.知识点全面,入门C 与算法
这本书主要是带领读者入门C 和算法,对于C 语言的基本知识,包括数据类型、输入/输出、基本结构、函数、数组、结构体、指针、位运算与进制、STL编程等都进行了讲解,更将常用、常查找的内容整理了5个附录。
C语言入门
数据类型及运算 字符和字符串 输入/输出 运算规则
基本结构
顺序结构 选择结构 循环结构
数组
函数
指针
结构体
位运算与进制
指针
STL编程
5个附录,查找便捷
ASCII 对照表 关键字 运算符及其优先级 常用函数库 常用函数
2.设计结构合理,快速熟悉竞赛
本书作者进行信息学竞赛的辅导已有十多年时间,收集整理了大量的竞赛资料,并按照初学者易于理解、更学得懂的方式进行了整理。作者也将这些经验积累融合在了本书中,编排了竞赛模拟和两个阶段检测,让读者在初期就能快速熟悉竞赛环境,了解笔试和上机检测。
3.题目经典,讲解细致
书中的所有题目都是经过精挑细选的经典题目,并且根据难易程度和知识体系进行设计和安排。对C 中容易忽略的小知识点都有详尽解释,穿插多个小提示,指出常见误区和错误。
精心录制了252个讲解视频,即使学习者自学也可以比较轻松地掌握书中内容,可以通过反复观看视频掌握书中内容。
4.注重思维训练
本书采用的是循序渐进、由浅入深的教学方法。一开始引入新知识点的题目时,书中会提供该题目的完整参考代码以供读者参考,但随着读者对此知识点的理解逐步加深,后续的同类型题目将逐步向仅提供算法思路、提供伪代码和无任何提示的方式转变。此外,对于一些思维跨度较大的题目,本书会酌情给予读者一定的提示。
本书中部分题目采用了“多向思考”“一题多解”“一题多变”的解决方法,其目的主要有3点:
- 一是充分调动读者思维的积极性,提高读者综合运用已学知识解答问题的技能;
- 二是锻炼读者思维的灵活性,促进读者知识和智慧的增长;
- 三是增加读者思维的深度和广度,引导读者灵活地掌握知识的纵横联系,培养和发挥读者的创造性。
5.超值在线评测系统,丰富的测试数据
作者及其团队还开发维护了在线评测系统(http://www.magicoj.com),在该系统中包含了本书的所有题目和丰富的测试数据,可在这个系统中在线提交代码,获得实时反馈。
Ps:在该网站可下载作者开发的三维图形化C 编程工具Dev-C 智能开发平台和Python 可视化界面设计软件Visual Python。
6.有趣新颖
在书中随机设置了十几个AR视频入口,根据提示可体验视频在图书上播放的效果。
— 03 —
本书适合哪些读者
准备参加或正在学习算法竞赛的读者:从入门知识到竞赛模拟,从例题讲解到动手实战,合理的内容设计,详细的讲解视频,好似一位经验丰富的教练,让C 入门与算法竞赛入门少走弯路。
算法竞赛教练和中小学算法竞赛辅导老师:设计合理、丰富经典的题目,详细的知识讲解和视频解答,可供参考的在线课件,都是教学上的一大助力。
计算机专业学生、算法爱好者:掌握C 语言知识,在一道道题目的实战中掌握算法知识。
— 04 —
信息学领域多位专家力荐
李艺 | 南京师范大学教授
本书是作者沉淀多年宝贵经验的精心之作,知识体系设计合理,有非常好的针对性,结合例题讲解深入浅出,且每一道题都配有讲解视频,大大提高了易用性与有效性,是入门信息学的理想用书。
邱桂香 | 东北育才学校 信息学国际金牌教练
编程类书籍很多,写成“艺术”的不多,致力于多角度培养思维的更少,张老师为此做出的努力值得点赞。一本书写了十年,足见其诚意;在多所学校进行检验,更见其对品质的追求。希望作者的付出能让更多读者受益。
江涛 | 佛山市南海区石门中学 信息学国际金牌教练
这本书风格细腻,对 C 中容易忽略的小知识点都有详尽解释,并恰当地插入编程竞赛的相关内容,很接地气。相信本书对信息学初学者很有帮助。
叶国平 | 安徽师范大学附属中学 信息学国际金牌教练
这本书的部分题目采用多种方法来解决,能调动读者思维的积极性,锻炼读者思维的灵活性,有助于增加读者思维的深度和广度,对信息学学习者的能力有很好的提升。
谢秋锋 | 长沙市长郡中学 信息学国际金牌教练
本书例题新颖,习题丰富,配套完善,比较全面地介绍了与编程竞赛相关的 C 语言知识和简单算法,为初学者了解和参与编程竞赛提供了全面的引导,是学习信息学很好的入门书籍。
江逸君 | 福建省厦门第一中学 信息学国际金牌教练
本书理论与实践紧密结合,适合学生自学,适合老师开拓教学思路。提高独立思考和内化编程算法知识的能力,让你的编程思维真正实现“观察、联想、变换”。
郑立言 | 清华大学研究生 NOI2015 邀请赛金牌得主
本书从基础的语言知识入手,深入浅出地介绍了C 语言和算法在编程竞赛中的应用。本书将丰富的知识以易于理解的方式展现给读者,同时兼顾了针对编程入门者的趣味性。通过阅读本书,读者不仅能掌握编程语言知识,更能领略其中的算法艺术,走进信息学的世界。
最后值得一提的是,这一系列的图书和在线评测系统都在不断丰富中,后续还将推出基础算法、动态规划、数据结构基础、编程与数学的更多精彩内容。
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/38278.html