A tricky little problem. I recently encountered it (again) at an interview. Although not complex and very easy to express, I found few people that solved it.
It goes like this: you're given a single-linked list (its head). In O(1) (constant) space complexity you have to determine if the list is circular or not. This constraint basically says that you can't use a variable for each list element (to remember if you've been there before for example).
NOTE: a circular list is also one of the type 1->2->3->4->2 - a portion of the list being outside the loop.