Can two mysql SELECT FOR UPDATE FROM mytable WHERE .. IN (..) deadlock?
This thread is discussing one example of deadlocks.  There are dozens, maybe hundreds, of ways to get a deadlock.

Sure, sorting the ids might prevent the IN(100,200) case, but what about all the rest?  Sure, go ahead and sort the ids.  And be sure to have suitable indexes.  And so on.  These might at least diminish the frequency of deadlocks.

Another example of a deadlock cause:  Lack of an index that leads to a table scan instead of an index lookup.  I think this can lead to locking all rows in the table, thereby both slowing things down and by having more locks, thereby begging for a deadlock.

I'll tell you what I have said many a time:  Deadlocks happen; live with it.  Be ready to restart the transaction from the BEGIN.

If you ever get a second deadlock, you should probably abort the program and spend some quality time figuring out how to speed up the entire transaction.  That is the best way to minimize deadlocks.

(OK, I'll admit that I don't know the definitive answer about IN().  Long ago (ver 4.1?), I thought I had proof that sorting was beneficial.  Later I heard that MySQL sorted the IN list, thereby killing my theory.  Or is all this hearsay evidence?)