計算機科学の質問はここでしろ!
■ このスレッドは過去ログ倉庫に格納されています
0089名無しさん@お腹いっぱい。
2007/03/22(木) 17:58:32ID:Tbpq2FlP0ありがとうございました。
でも私の頭では「これを解いて、」というところが理解できず。。。
このような方法は初めて見たのですが、参考になる本やサイトを紹介いただければ
ありがたいです。
とりあえず、次のように考えて答えを出しました。
@{w|wは部分文字列110を含む文字列}をあらわすDFAを作成。
A受理状態を非受理状態に、非受理状態を受理状態にする。
BNFAを正規表現にする方法を使い、Aで作成したDFAを正規表現にする。
結果、「(0∪10)*((1(ε∪11*))∪ε)」を得ました。
88さんの答えよりかなり複雑になってしまいましたが、私もegrepで試したところ
うまくいっているようです。
※egrep '^(0|10)*((1(|11*))|)$' …
■ このスレッドは過去ログ倉庫に格納されています