数据结构与算法之算法基础公式

数据结构与算法顾名思义包含数据的基本结构和算法分析。开始学习数据结构与算法,但是高等数学已经忘得差不多了。在这里,先把需要复习的高等数学公式在这里记录下。

指数

指数:是幂运算aⁿ(a≠0)中的一个参数,a为底数,n为指数,指数位于底数的右上角。当n=0时,

指数的常用公式:






对数

对数是指以幂为自变量,指数为因变量,底数为常量的函数。例:如果ax=N(a>0,且a≠1),那么数x叫做以a为底N的对数,记做x=logaN。

基本公式:;*=1;

常用公式:




级数

级数是指将数列的项依次依次用加号连接起来的函数。典型的级数有正项级数、交错级数、幂级数等。级数是指将数列un的项u1,u2,u3.........依次用加号连接起来的函数,是数项级数的简称,简写为。un记为级数的通项,记称之为级数的部分和。

常用公式:



模运算

模运算:模是“Mod”的音译。模运算多运用于程序编写中。Mod的含义为求余。如果N整除A-B,那么就说A与B模N同余,这意味着无论是A还是B被N去除,所得的余数都是相同的。a≡b (% p)。例如 11 ≡ 4 (% 7), 18 ≡ 4(% 7)。

常用定理:

(a + c) ≡ (b + c) (%p)

(a * c) ≡ (b * c) (%p)

证明的方法

证明的方法包括:归纳法证明、反证法证明。

归纳法证明:归纳法证明有两个标准的部分。第一步证明基准情形,接着进行归纳假设。

反证法证明:反证法证明是通过假设定理不成立,然后证明该假设导致某个已知的性质不成立。

递归

递归:程序调用自身的编程技巧称为递归。

递归的基准法则:

  1. 基准情形。必须要有某些基准情形,不用递归就能求解;
  2. 不断推进。对于那些要递归求解的情形,递归调用必须总能朝着一个基准情形推进。
  3. 设计法则。假设所有的递归都能调用。
  4. 合成效益法则。在求解一个问题的同一实例时,切勿在不同的递归调用中做重复性工作。

java泛型程序小示例

public static <AnyType extends Comparable<? super AnyType>> AnyType findMax(AnyType[] arr){
   int maxIndex = 0;
   for( int i=1;i<arr.length;i++){
     
      if(arr[i].compareTo(arr[maxIndex])>0){
         maxIndex = i;
       }
   }
   return arr[maxIndex];
}


猜你喜欢

转载自blog.csdn.net/fengyibande/article/details/80300736