|
|
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
SQL_Lamer Код: plaintext 1. 2. 3. 4. 5. 6. 7. Огорчаешь ты меня. Это моветон Наплевать мне на моветон. Код был написан раз и без ошибок. Читабелен, переносим, очевидная функция Реверс в библиотеке. автор while (start < end) { ........... start++; end--; } Красивый фрагмент где два индекса движутся друг другу на встречу, пока не встретятся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:35:16 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
PC_2учимся мыслить функционально и не гавнокодить. поучи меня функционально мыслить :) говнокодить можно и с применением STL В задаче было условие не использовать лишней памяти и не делать лишних перемещений. А так STL конечно рулит, ага ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:36:48 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
PC_2учимся мыслить функционально и не гавнокодить. Даже если бы не было функции Реверс, ее стоило бы придумать Код: plaintext 1. 2. 3. Но у вас тут получается 2 прохода... Вдруг автор задачи прибежит и скажет, что можно еще сэкономить на обращениях к массиву. PC_2 Время линейно. Благодаря понятности и очевидности кода, баги исключаются. Это еще не функциональное программирование, но функциональная мысль ставит все на свои места красивого решения. ИМХО. Точно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:40:20 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
me_dved Точно. Задачка то была поставлена как олимпиадная, а не с целью лечь в продакт И было явно подчеркнуто, что автора интересует экономия, а не только линейное время ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:42:27 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)PC_2учимся мыслить функционально и не гавнокодить. поучи меня функционально мыслить :) говнокодить можно и с применением STL В задаче было условие не использовать лишней памяти и не делать лишних перемещений. А так STL конечно рулит, ага нашел кого слушатся, студентика, это парень свой гавнокод еще будет три дня сидеть и отлаживать потому что пожлобился на три бита, и получил выиграш в производительности 0,0000001% Модератор: приподзабанен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:42:42 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
Давайте вместо мутирующей функции создадим реверсный итератор. Даёш lazy computing. Поближе к ФП тык-скыть.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:43:53 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
PC_2SQL_Lamer Код: plaintext 1. 2. 3. 4. 5. 6. 7. Огорчаешь ты меня. Это моветон Наплевать мне на моветон. Код был написан раз и без ошибок. Читабелен, переносим, очевидная функция Реверс в библиотеке. автор while (start < end) { ........... start++; end--; } Красивый фрагмент где два индекса движутся друг другу на встречу, пока не встретятся. Если ты пишешь на языках с синтаксисом семейства си, приятней глазу было бы сделать в for, но ежели уж ты такой адепт while, то хотя - бы что - нибудь такое: Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:44:06 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
PC_2 нашел кого слушатся, студентика, это парень свой гавнокод еще будет три дня сидеть и отлаживать потому что пожлобился на три бита, и получил выиграш в производительности 0,0000001% если ты заметил, я стал решать задачку (как я ее понял) только после того как автора забанили :) Так что я его НЕ слушался А в целом, я с тобой согласен, читабельный код в 99% процентах случаев предпочтительнее оптимального ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:45:20 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
SQL_Lamer Код: plaintext 1. 2. 3. А вдруг проскочим нужную остановку? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:45:32 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
maytonSQL_Lamer Код: plaintext 1. 2. 3. А вдруг проскочим нужную остановку? Можно и в начале проверить Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:49:21 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
SQL_Lamer Код: plaintext 1. вотето кстате моветон и плохая сишная привычка ИМХО. Лучше мух от котлет отделять, кода у тебя одна строчка кода в сишнем стиле "швец и кузнец и на игре дудец" читабельности ей это явно не добавляет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:49:39 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
PC_2SQL_Lamer Код: plaintext 1. вотето кстате моветон и плохая сишная привычка ИМХО. Лучше мух от котлет отделять, кода у тебя одна строчка кода в сишнем стиле "швец и кузнец и на игре дудец" читабельности ей это явно не добавляет. Ну да, сишная привычка, все правильно :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:50:44 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
maytonSQL_Lamer Код: plaintext 1. 2. 3. А вдруг проскочим нужную остановку? +1, ведь не понятно. Вайл должен начинаться с необходимого условия. Если условие не такое как нужно - блок не выполнять. Если вдруг в этого кузнеца передадут энд больше чем старт, он же напорошет в массиве и потом черт голову сломит в запорошеном массиве. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:54:15 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
А PC_2 то за что ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:57:00 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
PC_2Gluk (Kazan)PC_2учимся мыслить функционально и не гавнокодить. поучи меня функционально мыслить :) говнокодить можно и с применением STL В задаче было условие не использовать лишней памяти и не делать лишних перемещений. А так STL конечно рулит, ага нашел кого слушатся, студентика, это парень свой гавнокод еще будет три дня сидеть и отлаживать потому что пожлобился на три бита, и получил выиграш в производительности 0,0000001% Модератор: приподзабанен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:57:23 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
молод, горяч :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 13:58:20 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
переприподзазабаненый PC_2, Я просто к тому, что пишешь на сишном языке, придерживайся его правил(имхо) while как таковой вообще там глаз режет(опять имхо) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 14:03:02 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)me_dved Точно. Задачка то была поставлена как олимпиадная , а не с целью лечь в продакт И было явно подчеркнуто, что автора интересует экономия, а не только линейное время Хы, тогда можно попробовать посчитать композицию перестановок. 1) первая: "перевернуть" индексы массива, т.е. "как бы" сделать ( (7,6,5,4) , (3, 2,1) ) из ( (1,2,3) , (4,5,6,7) ) (1 2 3 4 5 6 7) (7 6 5 4 3 2 1) 2) вторая: "перевернуть" индексы в частях массива из (7,6,5,4) получить (4, 5, 6, 7) (1 2 3 4 5 6 7) (4 3 2 1 7 6 5) через композицию перестановок получить индексы элементов в исходном массиве, которые следует свопнуть. Я прав? :о) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 15:34:20 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
Ура! Членомерия :) Код: plaintext 1. 2. 3. Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 15:35:23 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
Яж о том и говорю. Это как умножение матриц. По теории, если мы умножаем матрицу А на B, то В необходимо развернуть. Но на практике, в процедуре умножения, разворот происходит "виртуально". На уровне индексов матриц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 15:46:05 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
me_dvedGluk (Kazan)me_dved Точно. Задачка то была поставлена как олимпиадная , а не с целью лечь в продакт И было явно подчеркнуто, что автора интересует экономия, а не только линейное время Хы, тогда можно попробовать посчитать композицию перестановок. 1) первая: "перевернуть" индексы массива, т.е. "как бы" сделать ( (7,6,5,4) , (3, 2,1) ) из ( (1,2,3) , (4,5,6,7) ) (1 2 3 4 5 6 7) (7 6 5 4 3 2 1) 2) вторая: "перевернуть" индексы в частях массива из (7,6,5,4) получить (4, 5, 6, 7) (1 2 3 4 5 6 7) (4 3 2 1 7 6 5) через композицию перестановок получить индексы элементов в исходном массиве, которые следует свопнуть. Я прав? :о) Вычислить конечно можно, но само вычисление последовательности транспозиций это ЛИШНИЕ движения в RunTime, хотелось сразу придумать универсальную последовательность с минимальным количеством транспозиций (в моем случае <= K+L-1 если опять нигде не напахал) Правда вычисления, которые ты предлагаешь можно провести в CompileTime, но я морально к этому не готов :( Если я тебя конечно правильно понял ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 15:59:41 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
ГыУра! Членомерия :) Код: plaintext 1. 2. 3. Код: plaintext 1. 2. Ты не уловил суть :) По задаче не размер исходного кода меряется :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 16:01:04 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan)ГыУра! Членомерия :) Код: plaintext 1. 2. 3. Код: plaintext 1. 2. Ты не уловил суть :) По задаче не размер исходного кода меряется :) А кого меряем? Время или память? Если время - то линейное, понятно. Если память, то мутабельный алгоритм будет экономнее, ФП тут мимо тазика. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 16:10:32 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
ГыЕсли память, то мутабельный алгоритм будет экономнее, ФП тут мимо тазика. Об том и речь. Автор настаивал на экономии памяти и количества транспозиций ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 16:18:36 |
|
||
|
Почему ООП так популярно?
|
|||
|---|---|---|---|
|
#18+
maytonСюда - же можно добавить концепцию объекта в различных ЯП. Везде она своя. Я бы сказал, что везде одна и та же концепция, поскольку объект он и в Африке объект. Его можно создать, удалить, передать (ссылку) другому и доступить. Бардак возникает только при попытке отображить термины программирования в математические. Вон в реляционной модели сделали такое оборажение, но все равно реляционной СУБД так и не создали и полный бардак на уровне реализации. А в ООП нет (столь же успешной) формализации и все хорошо. Никаких (почти) проблем. maytonА определений объекта - уж тем более существует несколько десятков, если не сотен. Определять объект это все равно что определять понятие множество или элемент множетсва. Объект не нуждается в определении - это базовое понятие. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2009, 16:22:41 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=35896406&tid=1344582]: |
0ms |
get settings: |
9ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
162ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 483ms |

| 0 / 0 |
