It depends on what you plan to use them for. An array is best for a small amount of collected data of which you know how many there will be. Arrays are ideal for strings and tables.

Linked lists are used when you do not know how many items there will be and you may want to place more than one item in an element and those items are of different types. Good for databases.

Binary trees are best for if you want to find something in the tree FAST. I believe that the formula is log(n)2 for how many evaluations it will take. Also good for databases, probably better than linked lists but binary trees are difficult to set up. Though that difficulty is worth it when you can find an item in a tree of 20000 in around 30 evaluations.

So the conclusion is that none of them is better than the other, just different. Each has it's own strength in an area. As for implementation...play with them and see which one works best for which application.