Variant 2919719491.
Могут ли приведенной BNF-грамматикой
<word>::=<letter>|<letter><pairlet>|<letter><pairdig> <pairlet>::=<letter><letter>|<pairlet><letter><letter> <pairdig>::=<digit><digit>|<pairdig><digit><digit> <letter>::=a|b|c|...|y|z <digit>::=0|1|2|...|9
Представьте, что для увеличения производительности вы решили денормализовать схему вашей базы, и завести дополнительные стобцы, лишние, с точки зрения 3 нормальной формы. Какие, из перечисленных, механизмы СУБД нужно использовать, чтобы поддерживать в этих столцах актуальные значения?
Программист Андрей Таранов написал быструю программу проверки орфографии. Сначала программа инициализирует логическую хеш-таблицу (булев массив, проиндексированный хеш-функцией) hashDict в false. Затем программа пробегает по всему словарю, и для каждого слова dicWord, выполняется hashDict[dicWord]=true. При проверке синтаксиса, для каждого слова word в тексте, программа проверяет hashDict[word].
Какие утверждения верны:
Рассмотрим компьютерную многопроцессорную архитектуру, где каждый процессор имеет свой собственный кеш, и где все они конкурируют за доступ к системной шине (критическому ресурсу).
Каждый процессор может выполнить одну инструкцию за 500 наносекунд, если инструкция ссылается на закешированные ячейки памяти. Но если происходит кеш-промах, то выполнение инструкций процессором задерживается на дополнительных 2000 наносекунд, причем первую половину этой задержки шина обслуживает запрос, а вторую половину задержки, результат этого запроса помещается в кеш процессора и происходят другие действия, а шина может обслуживать запросы от других процессоров. В среднем, каждая инструкция содержит два указателя на память, а кеш-промахи случаются в 1% указателей.
Какую часть пропускной способности шины использует один процессор, если игнорировать конкуренцию других процессоров?
Рассмотрим C-программу:
#include <stdio.h> main() { float sum=0.0, j=1.0, i=2.0; while (i/j>0.001) { j=j+j; sum=sum+i/j; printf("%f \n",sum); } }