摘要:
基数排序 基数排序(Radix Sort)是桶排序的扩展,它的基本思想是:将整数按位数切割成不同的数字,然后按每个位数分别比较。 具体做法是:将所有待比较数值统一为同样的数位长度,数位较短的数前面补零。然后,从最低位开始,依次进行一次排序。这样从最低位排序一直到最高位排序完成以后, 数列就变成一个有 阅读全文
摘要:
n皇后问题描述 在一个n×n的国际象棋棋盘上放置n个皇后,使得她们中任意两个之间都不会互相“攻击”,即任意两个皇后不可以放在同一行、同一列、同一斜线上。 输入:n 输出:有多少种满足条件的放置方法。 回溯法 解空间 利用约束条件,一维数组即可。 x[i] 表示第i行的皇后的列数为x[i]。 约束条件 阅读全文
摘要:
API: 概念:API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。——百度百科 个人理解:在Java中,API相当于是一个 阅读全文
摘要:
函数式接口(Functional Interface)是Java8引入的一个新特性,是一种特殊的接口:SAM类型接口(Single Abstract Method),但本质上还是接口。 函数式接口就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。 函数式接口可以被隐式转换为Lambda表 阅读全文
摘要:
定义 lambda表达式是一个可传递的代码块,它允许把函数作为一个方法的参数。 语法 表达式格式如下: (parameters)->expression 或 (parameters)->{statements;} 参数:(parameters)是这个Lambda表达式的参数部分,包括参数类型和参数名 阅读全文
摘要:
时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K Special Judge, 64bit IO Format: %lld 题目描述 Eddy likes to play cards game since there are always lot 阅读全文
摘要:
常用工具类 Math 常用静态方法: 求绝对值 Math.abs(-100); // 100 Math.abs(-3.15); // 3.15 取最大值或最小值 Math.max(100,22); // 100 Math.min(-2.123); // -2 计算xy: Math.pow(2,10) 阅读全文
摘要:
BigInteger 在Java中,由CPU原生提供的整型最大范围是64位long型整数。使用long型数据可以直接通过CPU指令进行计算,速度非常快。 如果我们使用的整数范围超过了long,那么我们就只能使用软件模拟一个大整数。java.math.BigInteger就是用来表示任意大小的整数。B 阅读全文
摘要:
枚举类 枚举(enum)类型是Java 5新增的特性,它是一种新的类型,允许用常量来表示特定的数据片段,而且全部都以类型安全的形式来表示。 所有的枚举都继承自java.lang.Enum类,又由于Java不支持多继承,所以枚举对象不能再继承其他类(但是可以实现interface)。 enum 可以让 阅读全文
摘要:
包装类型 Java的数据类型分为两种: 基本数据类型:byte,char,short,int,long,boolean,float,double 引用类型:所有的class和interface类型 Java核心库为每种基本类型都提供了对应的包装类型: 基本类型 引用类型 boolean java.l 阅读全文