摘要:
其他相对比较常用的数学相关内容有:表达式求值、最大公约数与最小公倍数问题、质数与质因数分解问题等。 知识点梳理 Ø 表达式求值: 表达式求值,即用字符串给定一个表达式,然后求解表达式的值。表达式求解的方式大致有两种:一种为模拟,一种为分治。 模拟法进行表达式求值时,建立两个栈,一个存放数值,一个存放 阅读全文
摘要:
1. 概述: 有的时候,数字会大到连long long(或int64)都不能承受的程度。这时,我们可以用数组来模拟大数的各种运算。该模拟方法即为高精度算法。 快速幂即为求解形如an的快速算法。 2. 知识点梳理: Ø 高精度的存储 高精度存储采用数组存储每一位的值,并记录数组的长度和正负性。一般来讲 阅读全文
摘要:
1. 概述: 组合数学又被称为离散数学,是数学中的一个重要分支。在信息学领域,主要用到的内容为排列、组合、容斥原理等。 2. 知识点梳理: Ø 加法原理与乘法原理 加法原理:做一件事情,完成它可以有n类办法,在第一类办法中有m1种不同的方法,在第二类办法中有m2种不同的方法,……,在第n类办法中有m 阅读全文
摘要:
一、概述 排序,顾名思义,是将一些无序的数据按照一定的规则排列成一个有序序列的过程。排序的方法排序算法虽然很少在NOIP的考题中直接出现,但是它经常会是整体算法的一部分。熟练掌握排序算法,并在考场上快速编写,可在解题时为自己赢得更多的时间和分数。 二、1. 知识点梳理: Ø 简单排序算法插入排序:顺 阅读全文
摘要:
一、 分治 概述: 将一个难以直接解决的大问题,分割成若干规模较小的相同问题,通过对子问题的求解来得到原问题的解。这种算法设计策略叫做分治法。 1. 知识点梳理: Ø 分治法的使用 分治法的使用基本是基于递归与回溯。先按照一定的分割方法,将原问题一步步分割为规模较小的子问题,递归调用求解子问题;然后 阅读全文