Home About
木構造の再帰による深さ優先検索

木構造の再帰を使った巡回 という エントリーのコードの改良版です。

なぜか最近たびたび木構造を扱うことがあったので、その辺を整理を含めた覚え書きです。

» Read More
独自にマークアップしたテキストをAST経由で何かに変換する

以前のエントリー 改善版) kotlin でパーサーコンビネータを実装する の続きです。

そもそもの動機としては、 マークアップがネストしていたときにパーサーコンビネータを使ってパースするにはどうすればいいのだろうか? とか考えはじめた結果の覚え書きです。

パーサーコンビネータ部分の説明は省きます。(以前のエントリーを必要なら参照のこと)

» Read More
木構造のノード出現順(深さ優先順)に番号を振る話 EPUB playOrder

EPUB の toc.ncx ファイルで naviPoint の playOrder 属性を指定する必要がある。 プログラム的にこれを設定する方法を実装したので、覚え書きとして書き残します。

» Read More
Haskell / リストから 木構造をつくる

次のような枝番号を持つ文字列のリストがあったとして、 それを木構造に変換する関数を書く。

この手の変換はたとえば EPUB の目次をつくるときに使う。

» Read More
木構造の再帰を使った巡回

少し前に 特定のディレクトリ以下全部のファイルとディレクトリをリストにするというエントリーを書いたのですが、 その応用です。

» Read More
再帰を使って木構造をリストに変換する JavaScript

Adobe XD の ドキュメント構造は scenegraph.root をルートノードとした木構造として表現されています。
これらのノードをスクリプトから操作するには、この木構造をたどる必要があります。 いちいちたどるのは面倒なので、木構造からリストに変換することを考えることにします。

» Read More