Обсуждение:Несогласованные поддеревья. Реализация массового обновления — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
Строка 1: Строка 1:
:{{tick}} интервики, нет ни одной внутренней ссылки на другие разделы про дерево отрезков.
+
:{{tick|ticked=1}} интервики, нет ни одной внутренней ссылки на другие разделы про дерево отрезков.
:{{tick}} опечатки
+
:{{tick}} склоняем правильно:
:: и операций должны удовлетворять
+
:: '''необходимо отвечать запросы'''
:: массовые операций
+
:: '''Так называемое "проталкиванием" '''
:: выполнять операций
 
:: массовой операций (да что же ты так это слово не любишь?)
 
 
:: блин, да ты во всем конспекте неправильно склоняешь «операции»
 
:: блин, да ты во всем конспекте неправильно склоняешь «операции»
 +
::: '''Все еще не исправлено'''
 
:{{tick}} у вас в лабе было как минимум две массовые операции по изменению (присваивание и добавление), а запрос был на минимум. Так что надо как-то разобраться, какую комбинацию операций изменения можно использовать и как с этим работать (то есть нужно при реализации определять какой-то приоритет на них и все такое).
 
:{{tick}} у вас в лабе было как минимум две массовые операции по изменению (присваивание и добавление), а запрос был на минимум. Так что надо как-то разобраться, какую комбинацию операций изменения можно использовать и как с этим работать (то есть нужно при реализации определять какой-то приоритет на них и все такое).
 +
:: Все еще одна операция на изменение и одна на сумму. Кажется, чтобы это сделать, надо просто объединить присвоение и добавление в одну массовую операцию, если я не ошибаюсь. Тогда получится одна хитрая операция изменения и одна нормальная для запроса.
  
 
:{{tick}} псевдокод
 
:{{tick}} псевдокод
 +
:: \subset должно быть \subseteq, кажется.
 
:: выдели операторы (if, while) жирным.
 
:: выдели операторы (if, while) жирным.
 +
::: '''return тоже оператор'''
 +
:: пробел перед открывающейся скобкой, в которой аргументы зачем-то
 
:: почему int get_ans, и int val. Это должны быть какие-то абстрактные типы.
 
:: почему int get_ans, и int val. Это должны быть какие-то абстрактные типы.
 +
::: '''Все еще есть int ans'''
 +
::: '''лучше использовать CamelCase в псевдокоде для именования типов (вроде MyType). А еще проще написать просто T value и т.д., это всем будет понятно'''.
 +
::: get_ans называется query.
  
:{{tick}}
+
:{{tick}} ans — сумма на отрезке по операции \oplus. Не сумма а просто результат.
 +
 
 +
:{{tick}} да, третье свойство дистрибутивности действительно кажется лишним.
 +
 
 +
:{{tick|ticked=1}}
 
:: с несколькими подряд идущими элементами.  --> «на отрезке»
 
:: с несколькими подряд идущими элементами.  --> «на отрезке»
 
:: «Для реализации вторая операция должна быть ассоциативной.» Вторая — это какая?
 
:: «Для реализации вторая операция должна быть ассоциативной.» Вторая — это какая?

Версия 18:40, 9 июня 2012

интервики, нет ни одной внутренней ссылки на другие разделы про дерево отрезков.
склоняем правильно:
необходимо отвечать запросы
Так называемое "проталкиванием"
блин, да ты во всем конспекте неправильно склоняешь «операции»
Все еще не исправлено
у вас в лабе было как минимум две массовые операции по изменению (присваивание и добавление), а запрос был на минимум. Так что надо как-то разобраться, какую комбинацию операций изменения можно использовать и как с этим работать (то есть нужно при реализации определять какой-то приоритет на них и все такое).
Все еще одна операция на изменение и одна на сумму. Кажется, чтобы это сделать, надо просто объединить присвоение и добавление в одну массовую операцию, если я не ошибаюсь. Тогда получится одна хитрая операция изменения и одна нормальная для запроса.
псевдокод
\subset должно быть \subseteq, кажется.
выдели операторы (if, while) жирным.
return тоже оператор
пробел перед открывающейся скобкой, в которой аргументы зачем-то
почему int get_ans, и int val. Это должны быть какие-то абстрактные типы.
Все еще есть int ans
лучше использовать CamelCase в псевдокоде для именования типов (вроде MyType). А еще проще написать просто T value и т.д., это всем будет понятно.
get_ans называется query.
ans — сумма на отрезке по операции \oplus. Не сумма а просто результат.
да, третье свойство дистрибутивности действительно кажется лишним.
с несколькими подряд идущими элементами. --> «на отрезке»
«Для реализации вторая операция должна быть ассоциативной.» Вторая — это какая?
конспект начинается ВНЕЗАПНО, без какой-то мотивации введения несогласованных поддеревьев
собственно, привести пример какой-нибудь массовой опреации и сведения ее к соответствующей алгебраической структуре.
тут, видимо, нужно сказать что-то про кольцо (или полукольцо?). А распределительный закон обычно называют дистрибутивностью.
пичалька, видимо, этого не было у вас в дз :( --Дмитрий Герасимов 16:58, 6 июня 2012 (GST)
Псевдокод сделать попонятнее
СОбственно, написать про массовые операции вообще.
категории

--Дмитрий Герасимов 20:54, 22 марта 2012 (GST)