摘要:
建一个Win32 Application程序#include <windows.h> // Windows的头文件#include "gl\gl.h"#include "gl\glu.h"#include "gl\glut.h" // 包含OpenGL实用库HGLRC hRC=NULL; // 窗口着色描述表句柄HDC hDC=NULL; // OpenGL渲染描述表句柄HWND ... 阅读全文
摘要:
为啥很多地方说“覆写equals的时候一定要覆写hashCode”。说到这里我知道很多人知道有个原则:如果a.equals(b)那么要确保a.hashCode()==b.hashCode()。为什么?hashCode和我写的程序的业务逻辑毫无关系,为啥我要override?要我说如果你的class永远不可能放在hash code为基础的容器内,不必劳神,您真的不必overr... 阅读全文
摘要:
为什么HashCode对于对象是如此的重要? 一个对象的HashCode就是一个简单的Hash算法的实现,虽然它和那些真正的复杂的Hash算法相比还不能叫真正的算法,它如何实现它,不仅仅是程序员的编程水平问题,而是关系到你的对象在存取是性能的非常重要的关系.有可能,不同的HashCode可能会使你的对象存取产生,成百上千倍的性能差别。 我们先来看一下,在JAVA中两个重要的数据结构:HashM... 阅读全文
摘要:
图灵机是图灵为了研究可计算问题而构思的一个理论装置,你只要想一想有限状态机就可以大概知道图灵机是个什么概念了,只不过图灵机的内存(纸带)是潜无穷的(也就是可以任意长啦,“潜无穷”是古稀蜡人的说辞)。图灵机的定义形象的说来就像老式的电传机:一个读写头,一根纸带(可能任意长),读写头不断读取纸带上的符号,并根据内在的状态转换规则转换当前状态,同时进行一些动作,譬如插除或改写当前... 阅读全文
摘要:
一切可计算的问题都能计算,这样的虚拟机或者编程语言就叫图灵完备的。 一个能计算出每个图灵可计算函数(Turing-computable function)的计算系统被称为图灵完备的。一个语言是图灵完备的,意味着该语言的计算能力与一个通用图灵机 (Universal Turing Machine)相当,这也是现代计算机语言所能拥有的最高能力。 图灵完备是什么意思呢? 子曰:在可计算理论中,当一... 阅读全文