ACM技术栈(知识栈)
一、知识点
数据结构:
1、单,双链表及循环链表
2、树的表示与存储,二叉树(概念,遍历)二叉树的应用(二叉排序树,判定树,博弈树,解答树等)
3、文件操作(从文本文件中读入数据并输出到文本文件中)
4、图(基本概念,存储结构,图的运算)
数学知识:
1、离散数学知识的应用(如排列组合、简单的图论,数理逻辑)
2、数论知识
3、线性代数
4、组合代数
5、计算几何
二、算法
1、排序算法(冒抛法,插入排序,合并排序,快速排序,堆排序)
2、查找(顺序查找,二分法)
3、回溯算法
4、递归算法
5、分治算法
6、模拟法
7、贪心法
8、简单搜索算法(深度优先,广度优先),搜索中的剪枝,A*算法
9,动态规划的思想及基本算法
10,高精度运算
三、ACM竞赛的题型分析
竞赛的程序设计一般只有16种类型,它们分别是:
DynamicProgramming(动态规划)
Greedy(贪心算法)
CompleteSearch(穷举搜索)
FloodFill(不知该如何翻译)
ShortestPath(最短路径)
RecursiveSearchTechniques(回溯搜索技术)
MinimumSpanningTree(最小生成树)
Knapsack(背包问题)
ComputationalGeometry(计算几何学)
NetworkFlow(网络流)
EulerianPath(欧拉回路)
Two-DimensionalConvexHull(不知如何翻译)
BigNums(大数问题)
HeuristicSearch(启发式搜索)
ApproximateSearch(近似搜索)
AdHocProblems(杂题)
四、ACM竞赛参考书
《实用算法的分析与程序设计》(吴文虎,王建德著,电子工业出版社,竞赛类的黑宝书)
《青少年国际和全国信息学(计算机)奥林匹克竞赛指导)――组合数学的算法和程序设计》(吴文虎,王建德著,清华大学出版社,参加竞赛组合数学必学)
《计算机算法设计与分析》 (王晓东编著,最好的数据结构教材)
《数据结构与算法》 (傅清祥,王晓东编著,我所见过的最好的算法教材)
《信息学奥林匹克竞赛指导――1997-1998竞赛试题解析》(吴文虎,王建德著,清华大学出版社)
《计算机程序设计技巧》 D.E.Kruth著,算法书中最著名的《葵花宝典》,大师的作品,难度大)
《计算几何》周陪德著
《ACM国际大学生程序设计竞赛试题与解析(一)》(吴文虎著,清华大学出版社)
《数学建模竞赛培训教材》 共三本叶其孝主编
《数学模型》 第二版姜启源
《随机规划》
《模糊数学》
《数学建模入门》 徐全智
《计算机算法设计与分析》 国防科大
五、常见的几个网上题库
常用网站:
(1)信息学初学者之家:http://oibh.ioiforum.org/
(2)大榕树编程世界:http://www.fjsdfz.org/~drs/program/default.asp
(3)中国教育曙光网:http://www.chinaschool.org/aosai/
(4)福建信息学奥林匹克:http://www.cfcs.com.cn/fjas/index.htm
(5)第20届全国青少年信息学奥林匹克竞赛:http://www.noi2003.org/
(6)第15届国际青少年信息学奥林匹克竞赛:http://www.ioi2003.org/
(7)全美计算机奥林匹克竞赛:http://ace.delos.com/usacogate
(8)美国信息学奥林匹克竞赛官方网站:http://www.usaco.org/
(9)俄罗斯Ural州立大学:http://acm.timus.ru/
(10)西班牙Valladolid大学:http://acm.uva.es/problemset
(11)ACM-ICPC:http://icpc.baylor.edu/icpc/
(12)北京大学:http://acm.pku.edu.cn/JudgeOnline/index.acm
(13)浙江大学:http://acm.zju.edu.cn/
(14)IOI:http://olympiads.win.tue.nl/ioi/
(15)2003年江苏省信息学奥林匹克竞赛夏令营:http://jsoi.czyz.com.cn
(16)http://acm.zju.edu.cn
(17)http://acm.zsu.edu.cn
(18)www.shumo.com
(19)http://www.bepark.com/downldmanag/index.asp
(20)http://www.yh01.com colin_fox/colin_fox
六、如何备战ACM/ICPC
1,个人准备(算法书,习题集,网上做题和讨论)
2,1000题=亚洲冠军=世界决赛
3,做好资料收集和整理工作
实验一:递归与分治
1. 二分查找
2. 合并排序
3. 快速排序
实验二:回溯
1. 0-1背包问题
2. 装载问题
3. 堡垒问题(ZOJ1002)
4. *翻硬币问题
5. 8皇后问题
6. 素数环问题
7. 迷宫问题
8. *农场灌溉问题(ZOJ2412)
9. *求图像的周长(ZOJ1047)
10. *骨牌矩阵
11. *字母转换(ZOJ1003)
12. *踩气球(ZOJ1004)
实验三:搜索
1. Floodfill
2. 电子老鼠闯迷宫
3. 跳马
4. 独轮车
5. 皇宫小偷
6. 分酒问题
7. *找倍数
8. *8数码难题
实验四:动态规划
1. 最长公共子序列
2. 计算矩阵连乘积
3. 凸多边形的最优三角剖分
4. 防卫导弹
5. *石子合并
6. *最小代价子母树
7. *旅游预算
8. *皇宫看守
9. *游戏室问题
10. *基因问题
11. *田忌赛马
实验五:贪心与随机算法
1. 背包问题
2. 搬桌子问题
3. *照亮的山景
4. *用随即算法求解8皇后问题
5. 素数测试
ACM技术栈(知识栈)相关推荐
- 【包邮免费送】Python 全栈知识图谱
想要学习 Pyhton 的同学,都遇到过这些问题: 没有时间翻专业书籍? 百度搜索还去大量的浏览文章.自我总结? 想系统的学习 Python 不知从何开始? ...... 类似的问题会反复出现在你的关 ...
- 40000+字超强总结?阿里P8把Java全栈知识体系详解整理成这份PDF
40000 +字长文总结,已将此文整理成PDF文档了,需要的见文后下载获取方式. 全栈知识体系总览 Java入门与进阶面向对象与Java基础 Java 基础 - 面向对象 Java 基础 - 知识点 ...
- 1. JAVA全栈知识体系--- Java基础
1. JAVA全栈知识体系- Java基础 文章目录 1. JAVA全栈知识体系--- Java基础 1.1 语法基础 面向对象特性? a = a + b 与 a += b 的区别 3*0.1 == ...
- 超全面Java全栈知识体系,定期更新(最近更新:2022.8.2)...
前言 最新Java全栈知识系统,定期更新..... 本套知识体系涵盖六大块: 一.前端基础 涵盖HTML5.CSS3.JavaScript.jQuery.Layui.Bootstrap等: 二.Jav ...
- Python 全栈知识图谱技能成长路线,面试必备图谱手册,全网最全首发的一份......
初学 Python 的你是否遇到过: 想要学习,却不知道从何开始? 没有时间啃书本?实操中遇到操作盲点? 知识点堆砌,学了一堆还是找不到工作 这其实是所有人接触 Python 时,都会遇到的问题. 需 ...
- 快速构建嵌入式全栈知识体系以及如何进阶
快速构建嵌入式全栈知识体系以及如何进阶 嵌入式是一门交叉学科.一个嵌入式电子产品(比如手机)从底层到上层,一般会涉及半导体芯片.电子电路.计算机.操作系统.多媒体等不同专业领域的知识.很多从事嵌入式开 ...
- ipv4v6双栈技术_IPv6过渡技术之双栈技术
IPv6经过20多年的发展研究实验,已经成为一项成熟技术,其具有大量IP地址数量.更小路由表.更安全等特点,为有效解决IPv4现存问题提供了途径.但是由于IPv6本身与IPv4不兼容,在IPv6成为主 ...
- 适合初学者仔细学习的栈知识
准备知识:单链表的运算 文章目录 栈的定义 栈的一些概念 元素出栈的顺序 栈的顺序结构存储和一些运算方法 顺序存储结构 简单的运算不做说明 初始化栈:InitStack(Sqstack *&S ...
- JVM【带着问题去学习 02】数据结构栈+本地方法栈+虚拟机栈+JVM栈运行原理
1.数据结构栈 栈是一种比较简单的数据结构,后进先出.栈本身是一个线性表,但是这个表中只有一端允许数据的进出.栈的常用操作包括入栈push和出栈pop,对应于数据的压入和弹出.由于栈后进先出的特性,常 ...
- Linux 中的各种栈:进程栈 线程栈 内核栈 中断栈
栈是什么?栈有什么作用? 首先,栈 (stack) 是一种串列形式的 数据结构.这种数据结构的特点是 后入先出 (LIFO, Last In First Out),数据只能在串列的一端 (称为:栈顶 ...
最新文章
- CVPR2019| 亚洲微软研究院、阿德莱德论文:结构知识蒸馏应用语义分割
- html5转换成mp4视频,HTML5的canvas动画转视频MP4
- OpenCV中将RGB数组在内存中压缩成JPEG文件
- Java通过 p12 建立ssl链接
- R语言建立ARIMA模型预测数据
- 苏州计算机应用能力中级办公自动化,苏州市计算机应用能力考核(中级-办公自动化)新系统使用..doc_人人文库网...
- 【Pandas】北理工嵩天老师Python数据分析与展示之Pandas
- 【校招VIP】产品行测之逻辑计算题
- 语言模型——n元语法模型
- linux 卸载skype,在Ubuntu 20.04系统下使用snap和apt安装Skype的方法
- 免费WiFi上网软件是什么?怎么用?
- linux 7查看网络流量,CentOS7 监控网络流量
- PhD-Debate 预告 | 底层视觉研究,我们应该往哪走?
- 关于MATLAB直方图的绘制及应用
- JAVA两年5009_【JAVA】PAT 乙级 1059 C语言竞赛(测试点1、2超时) 内含1-10000的素数表和0-10000是否素数的boolean值...
- 美国的互联网上网费现状
- 面试好处多,有机会还是多出去面面吧(技术岗)
- 国密SM3加密算法工具类(非对称)
- Array.reduce()的用法与进阶
- java非法表达的开始_Java非法的表达开始?
热门文章
- 今天是2019年大年三十儿,写了几幅字,给大家拜个年啦
- 云直播SDK核心功能对比|腾讯云、阿里云、声网、即构等SDK厂商对比
- AMD否认撤销Kuma处理器传言 将按计划推出
- 1小时学会HTML5基础
- esp32邮件服务器,ESP32智能家居集线器的制作
- 石墨笔记,熊掌记和Effie哪个更适合up主?
- C语言编程>第十六周 ⑦ s是全部由小写字母字符和空格字符组成的字符串,由len传入字符串的长度,请补充fun函数,该函数的功能是:统计字符串s中的单词数,结果由变量len传回。
- java 创建新的图片,底色自己设定
- video.js 实现视频只能后退,不能快进
- 习惯七 不断更新---平衡的自我提升原则