Honestly, patents on data structures seem more in line with patent law than patents on algorithms. They're supposed to cover physical devices, like a vegetable peeler or something. Patenting an algorithm usually works by saying "a computer that implement this algorithm"; patenting a virtual object seems a lot cloaer to the spirit of patents than patenting a procedure by embedding it in a general-purpose physical object.