UITableView で特定のセルをタップしたときに、セルに選択したことを明示するチェックマークを付けることがあります。タップしたセルだけにチェックマークをつけて、それまでついていたセルのチェックマークを外す排他的なやつです。

セルをタップした時に [tableView reloadData] でテーブル全体を更新してしてしまえばできるといえばできるのですが、それではチェックマークをつけるアニメーションがきれいになりません。

綺麗にアニメーションさせるためには、リロードせずにすべてのセルにチェックマークを外したうえで、対象のセルにチェックマークを付ける必要があります。

以下サンプルです。

override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    tableView.deselectRowAtIndexPath(indexPath, animated: true)

    // Hoge は UITableViewCell とリンクする enum です。
    // セルの数だけループしてすべてのセルのチェックマークをはずしています。
    for i in 0..<Hoge.count {
        let indexPath: NSIndexPath = NSIndexPath(forRow: i, inSection: indexPath.section)
        if let cell: UITableViewCell = tableView.cellForRowAtIndexPath(indexPath) {
            cell.accessoryType = .None
        }
    }

    // 対象のセルにチェックマークを付けます
    if let cell: UITableViewCell = tableView.cellForRowAtIndexPath(indexPath) {
        cell.accessoryType = .Checkmark
    }
}