Author: Andrew Dados
Date: 02:14:10 06/25/00
Go up one level in this thread
On June 25, 2000 at 03:27:07, blass uri wrote: >Can somebody post a C program that translates arrays to 32 bits integers when >usually different arrays get different numbers and also translates it in a way >that it is easy to find if the 32 bits integer is new? > >I think that this is the idea behind hash tables > >I need it for my program that I use to solve equations and inequalities. > >I have an array possolution[256][100000] and >I need to check if the possolution[256][i] is not identical to >possolution[256][j] >for all j<i(I do i++ only if it is not identical). > >If I can calculate the hash entry of possolution[256][i] and discover in a short >time that the hash entry of possolution[256][i] is different than the hash entry >of possolution[256][j] for j<i it will save my program a lot of time > >I need to know also how to do it in C with O(log[i]) steps and not in O(i) steps >and I know only how to do it theoretically in O(log[i]) steps but I do not know >how to do it in C because I do not know how to push an array forward(if I have >an array hash[100000] I do not know how to do for (i=35000;i<90000;i++) >hash[i]=hash[i+1] in a short time) if you treat hash as a pointer to array, just decrement its start point by SizeOf(hashentry), then remember then it has moved, so you don't access hash[i], but rather hash[i+offset] > >Uri
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.