Mirrored from Sudopedia, the Free Sudoku Reference Guide
Here is a diagram that shows a Swordfish in the rows:
The candidates in the 3 defining rows are marked X. These candidates only occupy 3 columns. Because it is impossible to have more than one instance of a digit in a column, each instance of X in the defining rows must be placed in one of these 3 columns. In other words: the candidates for digit X in these 3 columns must be located in these 3 rows. This allows us to eliminate the remaining candidates in these 3 columns.
Each defining row can contain 2 or 3 candidates for digit X. A minimum Swordfish has a different appearance, but it still fits the definition:
A minimum Swordfish can also be seen as a Fishy Cycle.
The diagrams are useful to understand how this technique works, but as you will see in the following example, a Swordfish is not easy to spot in a pencilmark grid.
Swordfish for digit 9 in rows 3,7,8 and columns 1,5,8.
Here is the diagram for this version:
In this diagram, you can also see that is is possible to have 2 defining columns in a single chute. Two of the secondary lines can also be located in a single chute, but it is not possible to have 3 lines of a Swordfish crossing in a single box. In that case, the Swordfish would degenerate into a series of Locked Candidates.
Here is an example of a Swordfish in the columns:
Minimum Swordfish for digit 3 in columns 1,5,7 and rows 1,5,7.
As already pointed out, it may be difficult to spot a Swordfish in a pencilmark grid. But the analysis and discovery of basic fish (X-Wing, Swordfish, Jellyfish, Squirmbag) can be made easier by mapping the fish problem onto a Locked Set problem. See Fish and Subsets to find out how to perform this mapping.
The following puzzles will help you practice this technique:
000308002000040700001970080905003006037000520800500903070096100006030000400807000 000000000008206900109804206004602500700000008001307400603405709005903800000000000 800060000000007600025900010008604000400000006000108300010006790002400000000090004 003105400000070000604903705501000302070030050802000907107306204000010000006207500 260907043730000089000000000100306005000070000400502001000000000340000097920403016
Select and copy each string and paste it into a computer program that accepts this input.