It doesn't pick the squares in the same order everytime, but it does only select squares in certain diagonal lines randomly until those diagonal lines have been filled (it will, of course, go after any hits it aquires in the process). The diagonal lines divide the board into sections 3 units wide. Once you know this it's easy to hide your ships that are 3 units long or less (the computer's selection system makes hiding 4 or 5 unit ships impossible if it has time to fill in the lines). After the diagonal lines have been filled in the rest seems rather random.