TAOCP Volume 1 を読み始めたばかりで、スタイルを理解するのに苦労しています。
Knuth は計算方法を 4 倍 (Q,I, Omega, f) であると述べていますが、これらのそれぞれが何を意図しているのかを理解するのに苦労しています。彼の最初の例は理解できるが、2 番目の例は理解できない
私は第 3 版の 8 ページを見ています。
章の終わり近くに、文字列のセットについて説明するアルゴリズムがあります。
(ギリシャ語の変数を入力しやすいものに置き換えました-申し訳ありません)
A を文字の有限集合とし、A* を A 上のすべての文字列の集合とします。この考え方は、計算の状態をエンコードして、A* の文字列で表すようにすることです。
Q = (s,j) where s is in A* and j is an integer, 0 <= j <= N
I = subset of Q with j = 0
Omega = subset with j = N
f = function below
(p と w は文字列であることに注意してください) と s が A* の文字列である場合、s が文字列 p と w に対して pTw の形式を持っている場合、T が s に出現すると言います。
f(s,j) = (s,a j ) T jが s に出現しない場合。 f(s,j) = (pY j w,b j ) p が s = pY j wを満たす最短の文字列の場合 f(s,N) = (s,N)
文字列のセットを作成するという概念は理解できますが、彼がここで言おうとしていることはすべて理解できません。なぜ Q、I、オメガが必要なのですか? f は実際に何を説明していますか (なぜ f に 3 つの関数が必要なのですか?)??
誰かが光を当てるのを助けることができますか?