On the way

N数码问题

康托展开 一个全排列到一个自然数的双射,常用于构建哈希表时的空间压缩。实质是计算当前排列在所有由小到大全排列中的顺序。 计算公式:。 例如,3 5 7 4 1 2 9 6 8 展开为 98884。因为 解释: 排列的第一位是3,比3小的数有两个,以这样的数开始的排列有8!个,因此第一项为 排列的第二位是5,比5小的数有1、2、3、4,由于3已经出现,因此共有3个比5小的数,这样的排列有7...

多态

《think in java》 第8章 多态通过分离做什么和怎么做,分离接口和实现。 多态的作用是消除类型之间的耦合关系。 也被称为动态绑定、后期绑定、运行时绑定。 向上转型 把对某个对象的引用视为对其基类型的引用。可能会缩小接口,但不会比基类接口更窄。 绑定 绑定,将方法调用同一个方法主体关联起来。 前期绑定,在程序执行前根据编译时类型绑定,是面向过程的语言中默认的绑定方式。调用开...

进程间通信-《分布式系统概念与设计》

简介 套接字:对目的计算机上的目标进程所使用的一个特定端口的引用。可以用 (IP地址:端口号)表示 消息传递接口(Message Passing Interface, MPI)是一个标准,为一组具有同步和异步支持的消息传递操作提供API。 互联网协议的API 进程间通信的特征 同步和异步通信 同步通信中,send和receive操作都是阻塞的。 异步通信中,send 非阻塞...

OJ练习的输入输出

标准输入输出(POJ) Java POJ中,提交java 代码默认保存到了一个Main.java的文件,所以代码里的类名也需要命名为Main,大概这个ACM中默认的约定。 public class Main { public static void main(String[] args) throws Exception { Scanner in = new Sc...

网络与网际互联-《分布式系统概念与设计》

简介 通信子系统:为分布式系统提供通信设施的软硬件组件 主机:计算机或其他用网络进行通信的设备 结点:网络上的所有计算机或交换设备 影响网络性能的参数 延迟 数据传输率,单位一般是 bit/s,注意和byte的区别。 网络类型 个域网(Personal Area Network, APN) 局域网(Local Area Network, LAN)...

Java IO系统

File 类 目录列表 File 既能代表一个特定的文件的名称,也能代表一个目录下的一组文件的名称,如果是一个文件集,则可以调用 list() 方法返回字符数组。 // 能访问java/util目录下的所有类,不能访问java/util子目录下的所有类。 // 因为如果java.util里面有个a类,java.util.regex里面也有个a类,我们若是要调用a类的方法或属性时,无法判断...

java Object和Objects区别

java.lang.Object java中所有的 class 都继承自 Object java.util.Objects Objects 只是包含一些操作Object实例的工具方法,并且Objects 不能被实例化,它是final 的并且没有public的构造器。 只包含一些static 方法。 public final class Objects { private Ob...

java容器深入研究

《Think in Java》 17章 完整的容器分类 ###

Java 数组

《Think in Java》 16章 数组的特殊性 效率。在Java中数组是效率最高的存储和随机访问对象引用序列的方式。代价是大小被固定。 类型。在泛型之前,其他类型的容器在处理对象时,都视为没有任何具体类型,即当做Object。而数组可以指定持有某种具体类型, 可以在编译的时候就可以检查是否插入了不正确的类型。 保存基本类型。泛型之前的容器不能保持基本类型,但有了泛型,...

系统模型-《分布式系统概念与设计》

《分布式系统概念与设计》 1、2章 第一章:分布式系统的特征 定义:软件或硬件组件分布在连网的计算机上,组件之间通过传递消息进行通信和动作协调的系统。 特征: 组件并发。执行并发程序。 缺乏全局时钟。这是通信是通过网络发送消息所决定。 故障独立性。组件出现故障,不影响其他组件。 构造和使用分布式系统是为了资源共享。 服务:计算机系统中管理相关资源并提供功能给用户和应用...