データ構造及びアルゴリズムの擬似言語について
太郎さん
(No.1)
Bitap法によるアルゴリズム
設問3
関数 GenerateBitMask
擬似言語の処理をトレースしているのですが、条件式の部分がいまいち理解できません。
条件式内の最後の処理、
・MASK[INDEX(PAT[I])]←…(以下省略)
はどこの条件式ないにあるのでしょうか?
私が思うに3つの条件分岐処理だと思っています。
そして最後の条件式(MODE = 0)の処理内に存在する処理になると考えているのですが、
そうすると矢印の長さがたりないように思います。
すみませんがどなたかご教授願います。
設問3
関数 GenerateBitMask
擬似言語の処理をトレースしているのですが、条件式の部分がいまいち理解できません。
条件式内の最後の処理、
・MASK[INDEX(PAT[I])]←…(以下省略)
はどこの条件式ないにあるのでしょうか?
私が思うに3つの条件分岐処理だと思っています。
そして最後の条件式(MODE = 0)の処理内に存在する処理になると考えているのですが、
そうすると矢印の長さがたりないように思います。
すみませんがどなたかご教授願います。
2020.01.20 12:04
太郎さん
(No.2)
すみません。
下記間違えです。
失礼しました。
誤り:最後の条件式(MODE = 0)の処理内に存在する処理
すみませんが、
本件引き続き教えていただきたいです。
下記間違えです。
失礼しました。
誤り:最後の条件式(MODE = 0)の処理内に存在する処理
すみませんが、
本件引き続き教えていただきたいです。
2020.01.20 13:51
QMさん
★FE ゴールドマイスター
(No.3)
令和元年秋期午後ですね。
この回を受験した人ばかりではないので、何年のどの問題と明記しましょうね。
で、受験していない私は該当部分だけ読んでの理解なので、何か見落としていたらごめんなさいですが。
"[" のとき
"]" のとき
それ以外(英字)のとき
の3つに分けて、英字のときだけ論理和を求めてMaskに入れる。
というのが大枠。
それとは別に、PatLenを数えるため、
"[" のとき
Mode=0 のとき
の二種類のタイミングで PatLen+1 をやっている。
Mode=0 つまり [] の外のときは1文字ずつ数えるけれど、
そうでないとき、つまり [] の中は全体で1文字なので、"[" が出てきた時に数えて、
個々の文字は数えない。
Mode=0 は PatLen+1 するための条件でしかないので、矢印はこれでOK。
これでいかが?
この回を受験した人ばかりではないので、何年のどの問題と明記しましょうね。
で、受験していない私は該当部分だけ読んでの理解なので、何か見落としていたらごめんなさいですが。
"[" のとき
"]" のとき
それ以外(英字)のとき
の3つに分けて、英字のときだけ論理和を求めてMaskに入れる。
というのが大枠。
それとは別に、PatLenを数えるため、
"[" のとき
Mode=0 のとき
の二種類のタイミングで PatLen+1 をやっている。
Mode=0 つまり [] の外のときは1文字ずつ数えるけれど、
そうでないとき、つまり [] の中は全体で1文字なので、"[" が出てきた時に数えて、
個々の文字は数えない。
Mode=0 は PatLen+1 するための条件でしかないので、矢印はこれでOK。
これでいかが?
2020.01.20 21:50
太郎さん
(No.4)
ご返信ありがとうございます。
失礼しました。
以後気をつけます。
大変わかりやすく。
理解できました。
if "[" のとき
・Mode ← 1
・PatLen+1
else if "]" のとき
・Mode ← 0
else それ以外(英字)のとき
if Mode = 0
・PatLen+1
end if
・MASK[INDEX(PAT[I])]←…(以下省略)
end if
を擬似言語で表しているのですね。
ありがとうございました。
スッキリしました。
失礼しました。
以後気をつけます。
>令和元年秋期午後ですね。
>この回を受験した人ばかりではないので、何>年のどの問題と明記しましょうね
大変わかりやすく。
理解できました。
if "[" のとき
・Mode ← 1
・PatLen+1
else if "]" のとき
・Mode ← 0
else それ以外(英字)のとき
if Mode = 0
・PatLen+1
end if
・MASK[INDEX(PAT[I])]←…(以下省略)
end if
を擬似言語で表しているのですね。
ありがとうございました。
スッキリしました。
2020.01.21 12:52
広告
返信投稿用フォーム
スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
広告