A common deadlock pattern involving a single table is when the table is accessed using different access paths by means of different indexes. This post in Bart Duncan’s series explains this with a proper example.
Jonathan (b|t) offers a visual representation of the concept here.
Remus Rusanu(b|t) also offers an example of the problem here.
This post is part of the series SQL Server deadlocks and live locks – Common Patterns. If you have questions, please post a comment here or reach me at @sqlindian