Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.fds-net.ru/showflat.php?Number=9683642&src=arc&showlite=
Дата изменения: Unknown
Дата индексирования: Tue Apr 12 09:21:56 2016
Кодировка: Windows-1251
[python] Давайте писать всякие не очень очевидные для новичков примеры - Public forum of MSU united student networks
Root | Google | Yandex | Mail.ru | Kommersant | Afisha | LAN Support
  
Technical >> Development (Archive)

Страницы: 0 | 20 | 40 | показать все
ayvango
ушастый

Рег.: 10.01.2006
Сообщений: 27731
Из: Воронеж
Рейтинг: 11831
  Re: [python] Давайте писать всякие не очень очевидные для новичков при [re: burivuh]
      27.08.2010 17:00
 

задача - сделать эффективное представление матрицы. Возможно выполнение функции normalize в фонов режиме (таким же образом, как и работа garbage collectorа), либо просто в момент операции определяется что делать с результатом: конвертировать или нет (посчитать во время умножения количество ненулевых элементов не усложняет задачу умножения), хранить одну версию представления или обе.



Сеть темна и полна ужасов
psa
sir

Рег.: 03.04.2004
Сообщений: 1205
Рейтинг: 509
  Re: [python] Давайте писать всякие не очень очевидные для новичков при [re: ayvango]
      27.08.2010 17:07
 

В ответ на:

задача - сделать эффективное представление матрицы. Возможно выполнение функции normalize в фонов режиме



Как бы тут противоречие...
При "эффективном" представлении, решении или еще чего там у тебя просто _нет_ фонового режима.




Antivirus alert: file .signature infected by signature virus.
KPblC
няшенько

Рег.: 29.11.2006
Сообщений: 15472
Рейтинг: 12019
  Re: [python] Давайте писать всякие не очень очевидные для новичков при [re: ayvango]
      27.08.2010 17:07
-2

кому нахуй питон нужен
пишите на жабе



DarkGrayМодератор
Carpal Tunnel

Рег.: 30.09.2002
Сообщений: 31410
Рейтинг: 8951
  - [re: burivuh]
      27.08.2010 17:08
 

> момент первый: почему матрицы сами себя подменяют вместо того, чтобы отдать управление чехардой третьему лицу
> момент второй: почему класс полной матрицы проверяет себя на полноту
> я увидел задачу так (поправь): в системе появляются данные, по ним определяется, какую матрицу использовать, матрица используется - замыкаем цикл

если сделать так как ты говоришь, то как будет выглядеть в коде, например, сложение двух полных матриц, в результате которых получается разреженная матрица?

в решении ayvango код будет аля matrix1 += matrix2; и в результате matrix1 автоматически становится разреженной.

psa
sir

Рег.: 03.04.2004
Сообщений: 1205
Рейтинг: 509
  Re: - [re: DarkGray]
      27.08.2010 17:11
-1

В ответ на:

в решении ayvango код будет аля matrix1 += matrix2; и в результате matrix1 автоматически становится разреженной.



опустим вопрос про копирования, но вспомним, что перевод в/из разреженного формата весьма не бесплатен
и если у тебя более одной операции матричной то на этом можно погореть, прыгая постоянно из одного в другой формат



Antivirus alert: file .signature infected by signature virus.
DarkGrayМодератор
Carpal Tunnel

Рег.: 30.09.2002
Сообщений: 31410
Рейтинг: 8951
  - [re: psa]
      27.08.2010 17:13
1


>и если у тебя более одной операции матричной то на этом можно погореть, прыгая постоянно из одного в другой формат

вопрос быстрого определения когда действительно необходимо перепрыгнуть тоже стоит опустить, потому что он не имеет отношения к поднятому ранее вопросу

psa
sir

Рег.: 03.04.2004
Сообщений: 1205
Рейтинг: 509
  Re: - [re: DarkGray]
      27.08.2010 17:18
 

определить быстро - совсем не проблема
проблема - это рюхнуть что конверсия действительно _нужна_
а это может решить только пользователь, который знает, что он там будет делать потом
это я к тому что пример дурацкий :)



Antivirus alert: file .signature infected by signature virus.
DarkGrayМодератор
Carpal Tunnel

Рег.: 30.09.2002
Сообщений: 31410
Рейтинг: 8951
  - [re: psa]
      27.08.2010 17:23
 

не нашел отличий в твоей фразе от моей

>psa>проблема - это рюхнуть что конверсия действительно _нужна_

>dg>вопрос быстрого определения когда действительно необходимо перепрыгнуть тоже стоит


ayvango
ушастый

Рег.: 10.01.2006
Сообщений: 27731
Из: Воронеж
Рейтинг: 11831
  Re: - [re: DarkGray]
      27.08.2010 18:17
 

Quote:


вопрос быстрого определения когда действительно необходимо перепрыгнуть тоже стоит опустить, потому что он не имеет отношения к поднятому ранее вопросу




значит можно еще ввести класс DelayedMatrix



Сеть темна и полна ужасов
unkulunkulu
unkulunkulunkulu

Рег.: 12.11.2006
Сообщений: 18453
Из: 13000
Рейтинг: 11759
  Re: [python] Давайте писать всякие не очень очевидные для новичков при [re: burivuh]
      27.08.2010 18:20
2

Quote:

У меня, честно говоря, возникает ощущение, что либо я не осознал задачу, либо архитектура решения хреновая.
момент первый: почему матрицы сами себя подменяют вместо того, чтобы отдать управление чехардой третьему лицу
момент второй: почему класс полной матрицы проверяет себя на полноту
я увидел задачу так (поправь): в системе появляются данные, по ним определяется, какую матрицу использовать, матрица используется - замыкаем цикл


да к черту матрицы, он про шаблон State.

Фишка вот в чем: он по сути сказал, что шаблон State реализуется на питоне гораздо лаконичнее, чем на C++. Таких примеров для разных языков и шаблонов довольно много. В пример привел применение шаблона State к матрицам. Все замечания тут относятся к адекватности применения этого шаблона к этой задаче, но не к питону и его преимуществах, State - довольно часто используемый шаблон, лаконичность его реализации - это аргумент.



Редактировал unkulunkulu (27.08.2010 18:48)
unkulunkulu
unkulunkulunkulu

Рег.: 12.11.2006
Сообщений: 18453
Из: 13000
Рейтинг: 11759
  Re: [python] Давайте писать всякие не очень очевидные для новичков при [re: unkulunkulu]
      27.08.2010 18:54
 

Да даже еще сильнее: State в питоне вообще не нужен по сути, там эта функциональность доступна напрямую.

DizzyDen
достаточно добр

Рег.: 04.03.2003
Сообщений: 51427
Из: http://лакалхвост
Рейтинг: 13546
  Re: - [re: ayvango]
      27.08.2010 19:27
 

Quote:

значит можно еще ввести класс DelayedMatrix



Lazy.



If stateless paradigm is good for your code, why shouldn't it be for your country?
krendelkandidat nauk

Рег.: 20.10.2003
Сообщений: 14379
Рейтинг: 10274
  Re: - [re: DizzyDen]
      27.08.2010 20:45
5

LazyMatrix и DizzyDen

Страницы: 0 | 20 | 40 | показать все

Technical >> Development (Archive)

Дополнительная информация
1 зарегистрированных и 1 анонимных пользователей просматривают этот форум.

Модераторы:  DarkGray 

Печать темы

Права
      Вы можете создавать новые темы
      Вы можете отвечать на сообщения
      HTML отключен
      UBBCode включен

Рейтинг:
Просмотров темы:

Переход в