in reply to Re^3: compare previous and present hash key values
in thread compare previous and present hash key values

I have a database that keeps routing paths to a destination

As such : Path network updatenumber 33 1 1 4 1 1 42 1 1 34 1 1 33 1 2 42 1 2 34 1 2

So that is an example of a database whereby to reach a particular network in the example (1) you need to traverse through 33 -> 4 -> 42 -> 39, but as time goes on there are updates to the route. So, what i am trying to archive is to see the numbers in a path that appear and disappear often. Which is why i am comparing the first updated route, to the second updated route. With the difference, i will store in a separate table. If a value already exist on that table, i will just increment it.So logically the highest value on that table will be a device which is troubled.Because it keeps appearing and disappearing. In my example database above, 4 is a difference between both paths. So i will store that somewhere etc. From my question i already loaded this database values into the hash. I was just stuck at doing the previous->next logic.

Replies are listed 'Best First'.
Re^5: compare previous and present hash key values
by NetWallah (Canon) on Jan 11, 2014 at 16:57 UTC
    You could still use the Array::Iterator::BiDirectional idea, populating the array iterator with the KEY of the hash.

    However, if all instances of a route have already been loaded into memory (which, to me, is a lot of unnecessary overhead), You simply need to step through each one, comparing it to the previous one. (No need for the NEXT).

    If you show us your code for the data structure you created, identifying the field names for the network, and path identifier, and instance, we could show you how to walk that structure.

    Without that, abstract discussion will only confuse.