Looking at the numbers, I don't think the linked list operations are hurting you at all.
First of all, could we clarify what the columns mean? I would guess the first column is a % of cpu time spent doing that function. I would also guess the second column is the amount of time spent in that function.
Second, if those are correct, let's do a summation of all linked list operations, and compare this to distance checking functions:
Distance Checking (AICheckCloseArrgo + Dist)
88.01%
0.86s
Linked List Operations (Includes IsXXXXX())
0.33%
0.00s
0.00 seconds is pretty fast!
Yeah, there are optimizations to be made with linked lists. However, I doubt the speed gained would offset the maintainability of the code lost.
|