Retrieval of an arbitrary item from a linked list is O(n). Arbitrary means any of the elements are eligible for selection, without loss of generality.
However, retrieval of a specific item from a linked list has nothing to do with how many items are in the list. It is therefore O(1). Retrieving the 50th item from a linked list takes the same amount of time, no matter whether the list has 50 elements, 50M elements, or 50^50! elements.
So..In the language of your choice, how do you retrieve your specific item in the first place in a way which doesn't go through the O(n) search overhead? If you've already done the search and are just using the cached results, sure, that's O(1) ("cache" lookup), but if you haven't previously searched-and-found the item (or sorted the list?)...