Tips

整数和 SUM(1,n)= n+ n-1 + n-2 ... 1;

SUM(1,n) = n (n+1) /2 SUM(m,n) = SUM(1,n) - SUM(1, m-1) = n(n+1)/2 - m*(m-1)/2

排序和组合

P(n, r) 从n个物品中取r 个物品的排序 , 排列可以是先取组合,然后进行一次r的全排列。

P(n, r) = C(n,r) * r! =n*(n-1)...(n-r+1) = n! /(n-r)!

C(n,r) 从n个物品中取r 个物品的组合

C(n, r) = P(n, r) / r! = n! / (n-r)! * r!

C(n, r) = C(n, n-r);

http://chowkafat.net/Enumeration2.htmlarrow-up-right

数组反序

public void reverse(int[] nums, int l, int h){
    while(l<h){
        swap(nums, l++, h--);
    }
}

字符串反序

整数反序

构造回文 Palindrome

判断回文1

判断回文2

Last updated