Niech L= { w in (0+1)* | w has even number of 1s}
, tj. L jest zbiorem wszystkich ciągów bitów o parzystej liczbie 1s. Które z poniższych wyrażeń regularnych reprezentuje L?Wyrażenie regularne dla ciągów bitów o parzystej liczbie 1s
) (0 * 10 * 1) *
B) 0 * (10 * 10 *) *
C) 0 * (10 * 1) * 0 *
D) 0 * 1 (10 * 1) * 10 *
Według mnie opcja D
nigdy nie jest poprawna, ponieważ nie reprezentuje ciągu znaków o wartości zero 1s. Ale co z innymi opcjami? Jesteśmy zaniepokojeni liczbą 1s (parzystą lub nie), nie liczba zer nie ma znaczenia.
To jest odpowiednia opcja i dlaczego?
Zauważ, że te nie są ciąg poszukiwania wyrażeń regularnych; są to wyrazy regularne dopasowujące język. Pamiętaj więc, aby je zakotwiczyć podczas testowania. –