董不董 - 董欣欣的个人博客

程序员
董欣欣的个人博客

【Java推荐】 Hash 散列函数的构建方法

1.直接定址法   直接定址法是以数据元素关键字k本身或它的线性函数作为它的哈希地址,即:H(k)=k  或 H(k)=a×k+b ; (其中a,b为常数)   例1,有一个人口统计表,记录了从1岁到100岁的人口数目,其中年龄作为关键字,...

最新发布

Java

Hash 散列函数的构建方法

阅读(48)评论(0)

1.直接定址法   直接定址法是以数据元素关键字k本身或它的线性函数作为它的哈希地址,即:H(k)=k  或 H(k)=a×k+b ; (其中a,b为常数)   例1,有一个人口统计表,记录了从1岁到100岁的人口数目,其中年龄作为关键字,...

Java

java synchronized(非this对象)

阅读(104)评论(2)

说明: 使用synchronized(非this对象)同步代码块时候,和this对象类似,锁的都是当前的对象,即对象监视器必须是同一个对象。如果不是同一个对象监视器,那么就可以异步执行了,因为锁的不是同一个对象,就会导致交叉运行了,所以在写...

Java

java 访问同一对象同步、非同步方法

阅读(78)评论(0)

同一对象访问其同步和非同步方法: 1、A线程先持有Object对象的lock锁,B线程可以以异步的方式调用Object对象中非synchronized类型的方法。 2、A线程先持有Object对象的lock锁,B线程如果在这时候调用Obje...

Java

java 线程方法内变量为安全

阅读(121)评论(0)

java中,如果方法内部有变量,则不存在非线程安全问题,因为方法内变量不是共有的变量,访问的是不同的地址,即自己运行自己的。下面用例子说明。 [crayon-59e67dce9d7b0394159399/]   [crayon-5...

Java

TreeSet 原理及使用

阅读(74)评论(0)

1.TreeSet原理: TreeSet存储对象的时候, 可以排序, 但是需要指定排序的算法 Integer能排序(有默认顺序), String能排序(有默认顺序), 自定义的类存储的时候出现异常(没有顺序) 如果想把自定义类的对象存入Tr...

Java

Java interrupt、interrupted、isInterrupted区别

阅读(105)评论(0)

java多线程中会遇见interrupt,下面解释下其功能和不同 interrupt():中断线程,事实上线程执行此句话并不是完全意义上中断,而是继续运行。此句话要想达到真正意义上中断,需要结合return 或者异常结合使用。 interr...

算法

拓扑排序 偏序 全序介绍

阅读(86)评论(0)

拓扑序列算法思想  (1)从有向图中选取一个没有前驱(即入度为0)的顶点,并输出之;  (2)从有向图中删去此顶点以及所有以它为尾的弧;      重复上述两步,直至图空,或者图不空但找不到无前驱的顶点为止。 注意:  1)只有有向无环图才...

计算机网络

TCP 四种定时器

阅读(80)评论(0)

TCP使用四种定时器(Timer,也称为“计时器”): 重传计时器:Retransmission Timer 坚持计时器:Persistent Timer 保活计时器:Keeplive Timer 时间等待计时器:Time_Wait Tim...

Java

Java 判断浮点数相等(两直线是否相交)

阅读(67)评论(0)

计算机表示浮点数(float或double类型)都有一个精度限制,对于超出了精度限制的浮点数,计算机会把它们的精度之外的小数部分截断。因此,本来不相等的两个浮点数在计算机中可能就变成相等的了。 例子: [crayon-59e67dcea1c...

Java

Java 锁Lock实例使用

阅读(101)评论(0)

synchronized和Lock区别: synchronized: (如果一个代码块被synchronized修饰了,当一个线程获取了对应的锁,并执行该代码块时,其他线程便只能一直等待,等待获取锁的线程释放锁) 获取锁的线程释放锁情况: ...

www.dongxinxin.cn 技术博客

联系我关于我