Есть у меня список, и мне требуется последовательно обойти все его элементы. Однако затык: начаться обход может с любого элемента списка. Я думал, что такое легко проделать при помощи LinkedList, если зациклить последний элемент на первый, но оказалось, что этот класс такой фичи не поддерживает. Конечно, можно добиться желаемого простым массивом и комбинацией Linq-овых Skip и Take, но может в .Net есть какая-нибудь готовая структура данных?