深さ優先探索と幅優先探索
・なっとくアルゴリズムのマンゴー販売店のくだりが幅優先探索
・身近なところから探していく
・階層構造の件でancestoryを使っているがこれの探索方法が気になった
・子孫全部取得するdescendantsが最終的に呼び出しているクエリ
code:ruby
def descendants_by_ancestry(ancestry)
t = arel_table
end
・パスの文字列順になる
・ちなみに深さ優先探索でもない。理由としては兄弟の取り方が下記のような順番ではないらしい
code:ruby
def siblings_of(object)
t = arel_table
node = to_node(object)
end
・「同じ親パス(ancestryカラム値)を持つノード」を全て取得する(子から検索している感じなのか)