今天的小技巧是可以让你以更方便的方式实现下面的程序:

        从上面框图中你可以看到,这一个结构是Object通过它们的名字来指认。我们其实可以将这个代码变得更为易读(可能会更快),这一个方法就是使用Search 1D Array:

        但是以上两种方法其实本身还是线性的搜索方式,因此,下面的方式可能让整个搜索数据的速度达到最快:

       在这个技巧之前,我根本没有对Variant Attribute这个概念有过深入的了解。你可以保存每个数据对象作为一个空变量的不同属性。我这边说“空”变量是因为它的实际值和数据类型都是无关紧 要的。我们可以很纯粹地使用变量作为一个可以搜索它属性的数据存储方式。我并不是一个计算机语言学家,但是很显然,Variant Attribute是以红黑树算法进行保存的,因此可以让它的搜索算法速度达到log(n)级别,这样比之前线性的n搜索级别要快很多。

       因此下次如果你想创建一个字符串数组查看表(就像之前的两种传统方法一样)时,你可以试一下这个Variant Attribute方法。




Leave a Reply.