Here I provide useful Delphi freeware components.
All components come with full source code.
TRandomAccessList is the best of both world's. Use the Items and ItemCount properties just like normal, or use the IndexedItem property to return the item at any random index without having to traverse all of the items. A simple descendant of TList that reduces memory fragmentation. When items are deleted from the list, the slots are kept open so newly added items can be added into those slots. This avoids having to move memory whenever an item is deleted, and allows the list to reclaim memory used by deleted items.