信息学竞赛宝典:数据结构基础
上QQ阅读APP看书,第一时间看更新

前言

编程竞赛介绍

随着计算机逐步深入人们生活的各个方面,利用计算机及其程序设计来分析、解决问题的算法在计算机科学乃至整个科学界的作用日益明显。相应地,各类以算法为主的编程竞赛也层出不穷:在国内,有全国青少年信息学奥林匹克联赛(National Olympiad in Informatics in Provinces,NOIP),该联赛与全国中学生生物学联赛、全国中学生物理竞赛、全国高中数学联赛、全国高中学生化学竞赛对高中生而言是含金量最高的竞赛;在国际上,有面向中学生的国际信息学奥林匹克竞赛(International Olympiad in Informatics,IOI)、面向亚太地区在校中学生的信息学科竞赛即亚洲与太平洋地区信息学奥林匹克(Asia-Pacific Informatics Olympiad,APIO),以及由国际计算机学会(Association for Computing Machinery,ACM)主办的面向大学生的国际大学生程序设计竞赛(International Collegiate Programming Contest,ICPC)等。

因为各类编程竞赛要求参赛选手不仅要有深厚的计算机算法功底、快速并准确编程的能力和创造性的思维,而且要有团队合作精神和抗压能力,所以编程竞赛逐渐得到高校、IT公司和其他社会团体的认同和重视。编程竞赛的优胜者更是Microsoft、Google、百度、Facebook(已更名为Meta)等全球知名IT公司争相高薪招募的对象。因此,除了各类参加编程竞赛的选手,很多不参加此类竞赛的研究人员和从事IT行业的人士,也都希望能得到这方面的专业训练并从中取得一定的收获。