按月份:五月 2015

  • Earth Mover's Distance —— 推土机距离

    Earth Mover's Distance,推土机距离,简称EMD,用来表示两个分布的相似程度,在计算机中经常用到。下面以计算机中常见的离散分布举例。 在维空间中,某个分布由向量集合给定:。其中代表空间中一个点,代表这个点的权值,可以是任意正整数,取决于这个离散分布的精确程度。在这个空间中定义两点间的距离,一般使用欧氏距离,即。 所谓“推土机距离”,就和“推土机”稍微有些联系。如果将分布看做空间 […]

  • 让Java Swing使用系统默认主题

    Java Swing的默认主题很丑,有时候我们想让它和Windows或者Linux主题一致,这样看起来和Windows或Linux的窗体一样。 要完成这件事其实很简单,只需要在主函数中加入如下代码即可:

  • C语言的三种函数调用方式

    C语言提供了三种调用函数的方式:cdecl,stdcall和fastcall。cdecl是标准的C语言调用函数的方式(C declared);stdcall是大多数链接库中使用的调用方式,比如Windows API,JNI API等等;fastcall顾名思义,就是说它调用起来比较快。这三种方式在C语言编写中几乎没有任何差别,但对应了不同的底层实现。 要使用这三种调用函数的方法,需要在函数声明和定 […]

  • IA-32中寄存器名称含义

    CS —— 代码段寄存器(Code Segment) SS —— 栈段寄存器(Stack Segment) DS —— 数据段寄存器(Data Segment) ES —— 扩展段寄存器(Extended Segment) FS,GS —— 数据段寄存器 EAX —— 累加寄存器(Extended Accumulator Register) ECX —— 计数寄存器(Extended Counte […]

  • 在Java中使用AnimatedGifEncoder生成GIF动画

    前段时间有需要用到生成GIF动画的地方,搜索了一下,但是并没有发现有库来做这件事情,见得比较多的是由Kevin Weiner编写的AnimatedGifEncoder.java。其作者授权所有人可以以任何方式使用这份代码,但是需要注意代码中所使用的LZW算法由Unisys掌握专利权。不过鉴于此专利在2006年就已经在大部分国家及地区过期了,所以现在应该可以放心地使用了。 AnimatedGifEn […]