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

Материал из Викиконспекты
Перейти к: навигация, поиск
 
Строка 1: Строка 1:
 
:{{tick|ticked=1}} интервики, нет ни одной внутренней ссылки на другие разделы про дерево отрезков.
 
:{{tick|ticked=1}} интервики, нет ни одной внутренней ссылки на другие разделы про дерево отрезков.
:{{tick}} склоняем правильно:
+
:{{tick|ticked=1}} склоняем правильно:
 
:: '''необходимо отвечать запросы'''
 
:: '''необходимо отвечать запросы'''
 
:: '''Так называемое "проталкиванием" '''
 
:: '''Так называемое "проталкиванием" '''
 
:: блин, да ты во всем конспекте неправильно склоняешь «операции»
 
:: блин, да ты во всем конспекте неправильно склоняешь «операции»
 
::: '''Все еще не исправлено'''
 
::: '''Все еще не исправлено'''
:{{tick}} у вас в лабе было как минимум две массовые операции по изменению (присваивание и добавление), а запрос был на минимум. Так что надо как-то разобраться, какую комбинацию операций изменения можно использовать и как с этим работать (то есть нужно при реализации определять какой-то приоритет на них и все такое).
+
:{{tick|ticked=1}} псевдокод
:: Все еще одна операция на изменение и одна на сумму. Кажется, чтобы это сделать, надо просто объединить присвоение и добавление в одну массовую операцию, если я не ошибаюсь. Тогда получится одна хитрая операция изменения и одна нормальная для запроса.
 
 
 
:{{tick}} псевдокод
 
 
:: \subset должно быть \subseteq, кажется.
 
:: \subset должно быть \subseteq, кажется.
 
:: выдели операторы (if, while) жирным.
 
:: выдели операторы (if, while) жирным.
Строка 17: Строка 14:
 
::: '''лучше использовать CamelCase в псевдокоде для именования типов (вроде MyType). А еще проще написать просто T value и т.д., это всем будет понятно'''.
 
::: '''лучше использовать CamelCase в псевдокоде для именования типов (вроде MyType). А еще проще написать просто T value и т.д., это всем будет понятно'''.
 
::: get_ans называется query.
 
::: get_ans называется query.
 
+
:{{tick|ticked=1}} ans — сумма на отрезке по операции \oplus. Не сумма а просто результат.
:{{tick}} ans — сумма на отрезке по операции \oplus. Не сумма а просто результат.
+
:{{tick|ticked=1}} да, третье свойство дистрибутивности действительно кажется лишним.
 
 
:{{tick}} да, третье свойство дистрибутивности действительно кажется лишним.
 
 
 
 
:{{tick|ticked=1}}
 
:{{tick|ticked=1}}
 
:: с несколькими подряд идущими элементами.  --> «на отрезке»
 
:: с несколькими подряд идущими элементами.  --> «на отрезке»
 
:: «Для реализации вторая операция должна быть ассоциативной.» Вторая — это какая?
 
:: «Для реализации вторая операция должна быть ассоциативной.» Вторая — это какая?
 
 
: {{tick|ticked=1}} конспект начинается ВНЕЗАПНО, без какой-то мотивации введения несогласованных поддеревьев
 
: {{tick|ticked=1}} конспект начинается ВНЕЗАПНО, без какой-то мотивации введения несогласованных поддеревьев
  
: {{tick}} собственно, привести пример какой-нибудь массовой опреации и сведения ее к соответствующей алгебраической структуре.
 
:: {{tick}} тут, видимо, нужно сказать что-то про кольцо (или полукольцо?). А распределительный закон обычно называют дистрибутивностью.
 
::: пичалька, видимо, этого не было у вас в дз :( --[[Участник:Dgerasimov|Дмитрий Герасимов]] 16:58, 6 июня 2012 (GST)
 
 
: {{tick|ticked=1}} Псевдокод сделать попонятнее
 
: {{tick|ticked=1}} Псевдокод сделать попонятнее
 
: {{tick|ticked=1}} СОбственно, написать про массовые операции вообще.
 
: {{tick|ticked=1}} СОбственно, написать про массовые операции вообще.
 
: {{tick|ticked=1}} категории
 
: {{tick|ticked=1}} категории
 
--[[Участник:Dgerasimov|Дмитрий Герасимов]] 20:54, 22 марта 2012 (GST)
 
--[[Участник:Dgerasimov|Дмитрий Герасимов]] 20:54, 22 марта 2012 (GST)
 +
 +
== TODO: Обобщить ==
 +
: {{tick}} собственно, привести пример какой-нибудь массовой опреации и сведения ее к соответствующей алгебраической структуре.
 +
:: {{tick}} тут, видимо, нужно сказать что-то про кольцо (или полукольцо?). А распределительный закон обычно называют дистрибутивностью.
 +
::: пичалька, видимо, этого не было у вас в дз :( --[[Участник:Dgerasimov|Дмитрий Герасимов]] 16:58, 6 июня 2012 (GST)
 +
:{{tick}} у вас в лабе было как минимум две массовые операции по изменению (присваивание и добавление), а запрос был на минимум. Так что надо как-то разобраться, какую комбинацию операций изменения можно использовать и как с этим работать (то есть нужно при реализации определять какой-то приоритет на них и все такое).
 +
:: Все еще одна операция на изменение и одна на сумму. Кажется, чтобы это сделать, надо просто объединить присвоение и добавление в одну массовую операцию, если я не ошибаюсь. Тогда получится одна хитрая операция изменения и одна нормальная для запроса.
 +
:::: '''Раз уж не было в дз всего этого, ладно уж. Оставим будующим поколениям задачу обобщить.''' --[[Участник:Dgerasimov|Дмитрий Герасимов]] 15:02, 10 июня 2012 (GST)

Текущая версия на 14:02, 10 июня 2012

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

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

TODO: Обобщить

собственно, привести пример какой-нибудь массовой опреации и сведения ее к соответствующей алгебраической структуре.
тут, видимо, нужно сказать что-то про кольцо (или полукольцо?). А распределительный закон обычно называют дистрибутивностью.
пичалька, видимо, этого не было у вас в дз :( --Дмитрий Герасимов 16:58, 6 июня 2012 (GST)
у вас в лабе было как минимум две массовые операции по изменению (присваивание и добавление), а запрос был на минимум. Так что надо как-то разобраться, какую комбинацию операций изменения можно использовать и как с этим работать (то есть нужно при реализации определять какой-то приоритет на них и все такое).
Все еще одна операция на изменение и одна на сумму. Кажется, чтобы это сделать, надо просто объединить присвоение и добавление в одну массовую операцию, если я не ошибаюсь. Тогда получится одна хитрая операция изменения и одна нормальная для запроса.
Раз уж не было в дз всего этого, ладно уж. Оставим будующим поколениям задачу обобщить. --Дмитрий Герасимов 15:02, 10 июня 2012 (GST)