2019年4月30日のブックマーク (2件)

  • 木構造 (データ構造) - Wikipedia

    この記事には参考文献や外部リンクの一覧が含まれていますが、脚注による参照が不十分であるため、情報源が依然不明確です。 適切な位置に脚注を追加して、記事の信頼性向上にご協力ください。(2023年1月) 木構造は、一般のグラフ構造と同様の、ノード(節点、頂点)とノード間を結ぶエッジ(枝、辺)あるいはリンクで表すこともできるが、木構造専用の、特に有向の根付き木となるような表現が使われることも多い。 データ構造として使われる木は、ほとんどの場合、根となるノードが決められた根付き木である。さらに、有向木であることも多い。[注 2] ノード間の関係は家系図に見立てた用語で表現される。木構造内の各ノードは、0個以上の子ノード (英: child node) を持ち、子ノードは木構造内では下方に存在する(木構造の成長方向は下とするのが一般的である)。子ノードを持つノードは、子ノードから見れば親ノード (英

    木構造 (データ構造) - Wikipedia
    proxy0721
    proxy0721 2019/04/30
  • 抽象構文木

    トップ > C-Tips > 抽象構文木 抽象構文木 1.抽象構文木とは 元のプログラムの構造をそのまま木構造で表したものを構文木(syntax tree, parse tree)という。 全てのトークン(字句)が構文木に含まれる。 これらのトークンには、"(" や ")" など後の処理(意味解析など)に不要なものも含まれる。 これら不要なトークンを除いたものを、抽象構文木(abstarct syntax tree)という。 構文木と抽象構文木の違いの例を下図に示す。 C言語で表現する場合、構文木のノードと葉は一般に構造体となるが、 どのように定義するかは、特に定まっていない。後の処理に都合のよいように定義する。 Tiny Cの場合、 リスト構造を採り、次のように表現している。 2項演算子 a + b => (+ a b) a - b => (- a b) 関数呼び出し foo(i, 3)

    proxy0721
    proxy0721 2019/04/30