Форум: "Потрепаться";
Текущий архив: 2005.02.13;
Скачать: [xml.tar.bz2];
ВнизРабота Найти похожие ветки
← →
KilkennyCat © (2005-01-20 01:20) [40]
> Aristarh (20.01.05 01:11) [38]
да, это риск. Но думаю, я в состоянии объективно оценивать людей, и в плане профессионализма то же, даже в не очень знакомом мне направлении.
Общая схема работы вовсе не жесткая, я буду обсуждать ее со всеми программистами, пока не будет найдена идеальная.
← →
KilkennyCat © (2005-01-20 01:24) [41]
> им время на работу и по сделанной части работы выбираешь
> у кого лучше - так будет объективней
да, и очень удобно для меня, как для предпринимателя, но я смогу оплатить только лучший вариант, и это означает, что другой зря работал. Хотелось бы этого избежать. При условии, что работают профи, это вполне возможно, так как конкурс уже не нужен: различия рещений будут минимальны.
← →
default © (2005-01-20 01:27) [42]KilkennyCat © (20.01.05 01:24) [41]
давайте определим профи!
вот задача
Есть массив, упорядоченный по возрастанию, например, 0123456789
Надо его переупорядочить "горкой в центре": 0246897531
Цифры приведены для примера, на самом деле массив может быть любой заданной
длины N,
и числа там тоже любые, только что упорядоченные.
Основная проблема - сделать это за время O(N) с затратами памяти меньшими, чем
O(N).
Решение лучше всего оформить в виде процедуры ReOrder(var a:array of Integer);
на данный момент я вижу только алгоритм сложности O(N*LogN)
← →
Lancelot © (2005-01-20 01:27) [43]>wl © (20.01.05 01:05) [36]
>программист переходит на следующий уровень(levelup) когда перестает писать программы сам и начинает проектировать системы и координировать работу рядовых программистов
Имея на своей шкуре возможность оценить все стороны такого перехода, хочу тебе сказать, что скорее это не levelup, а levelside. Все познается в сравнении.
← →
default © (2005-01-20 01:29) [44]default © (20.01.05 01:27) [42]
ну хорошо допустим ты будешь ориентироваться по значкам
если несколько претендентов со значками что будешь делать?
← →
KilkennyCat © (2005-01-20 01:38) [45]
> если несколько претендентов со значками что будешь делать?
если честно, пока не знаю. В дальнейшем практика покажет. Либо выработается хорошая схема работа, либо я опять потеряю время и деньги :)
← →
KSergey © (2005-01-20 08:34) [46]> [42] default © (20.01.05 01:27)
Пусть меня сочтут лохом и лентяем, но все же хотелось бы спросить общественность: как сильно связаны задачки олимпиадного толка и профессионально выполненные проекты?
Рискну высказать свое мнение: да, занятно бывает потратить много килочасов на решение головоломной задачи и получить, наконец, красивое (скорее - в академическом плане) решение. Да еще и строго доказать, что это все именно так.
Но когда есть реальный проект, реальные сроки - то боюсь далеко не всегда выиграет решение, в котором где-то там в каком-то зарытом от пользователя месте сортировка идет на 3 сек быстрее, чем у других решений.
Да, безусловно знать стандартные алгоритмы и, главное, четко представлять область их применения - надо. Однако в задачах прикладного уровня - так ли это важно?
Да, есть задачи, где основная сложность именно в этой части - компактности и скорости (игровые "движки", архиваторы, ядро ОС, ядро SQL-сервера). Но остальная и, по-моему, подавляющая часть задач в этом попросту не нуждается (в отсутствии каких-либо спец. указаний в ТЗ, разумеется)...
Скажите, я сильно заблуждаюсь?
← →
Kerk © (2005-01-20 08:40) [47]default © (20.01.05 1:27) [42]
если числа упорядочены, то может идти последовательно и вставлять каждый следующий элемент в середину результирующего массива?
← →
Kerk © (2005-01-20 08:43) [48]Kerk © (20.01.05 8:40) [47]
ой.. имелось ввиду идти с конца.. если идти с начала, надо раскидывать элементы по краям.
← →
MBo © (2005-01-20 09:50) [49]>Kerk ©
Дополнительный (результирующий) массив использовать нельзя, требования по памяти O(1), т.е. нужно переставлять в имеющемся, а в процедуре Reorder можно завести только несколько целочисленных переменных.
этот код:
var
a: array of Integer;
n, i: Integer;
s: string;
begin
for n := 3 to 11 do begin
SetLength(a, n);
for i := 0 to High(a) do
a[i] := i;
s := "";
for i := 0 to High(a) do
s := s + IntToStr(a[i]) + " ";
Memo1.Lines.Add(s);
ReOrder(a);
s := "";
for i := 0 to High(a) do
s := s + IntToStr(a[i]) + " ";
Memo1.Lines.Add(s);
Memo1.Lines.Add("");
end;
должен обеспечить такую выдачу:
0 1 2
0 2 1
0 1 2 3
0 2 3 1
0 1 2 3 4
0 2 4 3 1
0 1 2 3 4 5
0 2 4 5 3 1
0 1 2 3 4 5 6
0 2 4 6 5 3 1
0 1 2 3 4 5 6 7
0 2 4 6 7 5 3 1
0 1 2 3 4 5 6 7 8
0 2 4 6 8 7 5 3 1
0 1 2 3 4 5 6 7 8 9
0 2 4 6 8 9 7 5 3 1
0 1 2 3 4 5 6 7 8 9 10
0 2 4 6 8 10 9 7 5 3 1
← →
KilkennyCat © (2005-01-20 10:19) [50]
> KSergey © (20.01.05 08:34) [46]
В данном случае никакого заблуждения. Я не планирую собирать команду для участия в олимпиадах. Это малодоходно, а я заинтересован в деньгах, такой вот негодяй :)
← →
Kerk © (2005-01-20 10:48) [51]MBo © (20.01.05 9:50) [49]
требования по памяти O(1),
в условии написано O(N)
← →
Guest_ (2005-01-20 10:55) [52]Письмо отправил... А ответ ждать сразу?
← →
REA (2005-01-20 10:59) [53]Про олимпиады: читал, что зависит, но не слишком. Не все задачи ориентированы на поиск "оптимальных" математическо-программных решений. Чаще требуется программировать интерфейс, БД и т.п.
← →
MBo © (2005-01-20 11:10) [54]>Kerk © (20.01.05 10:48) [51]
>в условии написано O(N)
Там написано меньше, чем O(N).
На самом деле достаточно O(1)
(хотя, если подходить совсем формально, для индексации массива размером N требуется счетчик размером O(ln(N)) ;) )
← →
SPeller © (2005-01-20 11:13) [55]Guest_ (20.01.05 10:55) [52]
Письмо отправил... А ответ ждать сразу?
Угу, такой же вопрос. Когда ждать ответа и ждать ли вообще?
KSergey © (20.01.05 8:34) [46]
Но когда есть реальный проект, реальные сроки - то боюсь далеко не всегда выиграет решение, в котором где-то там в каком-то зарытом от пользователя месте сортировка идет на 3 сек быстрее, чем у других решений
У нас на работе это решается так: сначала сделать чтобы работало, а потом, если заказчик скажет что его не устраивает скорость, либо скорость будет реально низкой из-за большого кол-ва данных, то беремся оптимизировать. Вот тогда уже есть место для алгоритмов. Иногда увеличение на 50 миллисекунд дает заметный прирост при обработке 50000 записей :)
← →
Kerk © (2005-01-20 11:15) [56]MBo © (20.01.05 11:10) [54]
меньше, чем O(N).
да.. на слово "меньше" я как-то внимания не обратил.. и был удивлен простоте задачи. :) бывает.
← →
KSergey © (2005-01-20 12:05) [57]> [55] SPeller © (20.01.05 11:13)
> на 50 миллисекунд
Под секундами я подразумевал общее замедление, конечно же ;)
> [50] KilkennyCat © (20.01.05 10:19)
Мой вопрос был скорее "вообще", не только и не столько в данном контексте.
Всем спасибо за бальзам на душу лентяя ;)
← →
Digitman © (2005-01-20 17:01) [58]
> KilkennyCat
ну и чего ты завял ?
я намылил тебе, ГДЕ реакция ?)
← →
KSergey © (2005-01-20 17:25) [59]> [58] Digitman © (20.01.05 17:01)
> я намылил тебе, ГДЕ реакция ?)
А она была обещана? ;)
← →
Digitman © (2005-01-20 17:28) [60]
> KSergey © (20.01.05 17:25) [59]
обделаться на публике, при всей "сурьезности намерений", - малого стоит) ...
← →
KilkennyCat © (2005-01-20 17:36) [61]Всем приславшим отправил подтверждение.
Могу дополнительно и здесь подтвердить, письма от Digitman и КSergey получены.
Пожалуйста, немного терпения. Писем приходит много, и не только по этой теме. Обрабатываю почту в основном ночью. Днем мне тоже приходится работать. Кроме того, мне часто приходится разъезжать по клиентам, и не только в пределах города. Поэтому, возможны некоторые задержки.
← →
Piter © (2005-01-20 17:43) [62]Ну вот, KilkennyCat уже стал бабки зашибать на посредничестве...
← →
вразлет © (2005-01-20 17:44) [63][61] KilkennyCat © (20.01.05 17:36)
Пожалуйста, немного терпения. Писем приходит много, и не только по этой теме.
Предлагаю открыть ветку "Утрення почта с KilkennyCat"
← →
вразлет © (2005-01-20 17:44) [64]Где и обсуждать самые смешные письма)
← →
KilkennyCat © (2005-01-20 17:49) [65]
> Piter © (20.01.05 17:43) [62]
Это плохо? И что есть посредничество?
Все программы, прошедшие через меня, будут выходить под маркой фирмы. Указание данных о программисте - на его усмотрение. Ответственность за программу, ее дальнейшее использование и жизнь - дело фирмы.
Много нашли различий от нормальной фирмы, с постоянным штатом сотрудников?
← →
Piter © (2005-01-20 17:55) [66]KilkennyCat © (20.01.05 17:49) [65]
Это плохо?
зашибание бабок или посредничество? :)
← →
KilkennyCat © (2005-01-20 17:59) [67]и то, и другое.
← →
wl © (2005-01-20 18:57) [68]а вот такой вопрос: когда начнется первый проект?
← →
KilkennyCat © (2005-01-20 19:00) [69]
> wl © (20.01.05 18:57) [68]
Когда выработается окончательная схема работы. Предполагаю, недели через две, максимум три. Работа уже есть, но пока я со всеми не утрясу все детали сотрудничества, ничего запускать в работу не буду.
← →
Rule © (2005-01-20 19:20) [70]KilkennyCat © (20.01.05 19:00) [69]
эт правильно и логично ...
← →
Anonimus © (2005-01-20 20:11) [71]KilkennyCat © (19.01.05 13:36)
А почему именно КОЛ?
ВЦЛ не нравиться? Если из-за размера - так это не актуально в наше время.
И кстати, на какой версии делфи нужно писать. По ходу ветки я так понял будет требоваться исходный код.
← →
SPeller © (2005-01-20 20:47) [72]Anonimus © (20.01.05 20:11) [71]
А почему именно КОЛ?
ВЦЛ не нравиться?
Иногда может понадобиться. Да и кто сказал что всё будет на KOL? По-моему упоминание о программировании на Дельфи уже подразумевает программирование на VCL.
← →
Anonimus © (2005-01-20 21:10) [73]Ну тады щас письмо напишу
← →
KilkennyCat © (2005-01-20 22:58) [74]
> А почему именно КОЛ?
> ВЦЛ не нравиться? Если из-за размера - так это не актуально
> в наше время.
ошибочное мнение. Представьте себе, что я плачу за траффик. У меня скачали программу N раз. Сделанная с KOL весит в десять раз меньше. Во сколько раз меньше я заплачу?
> И кстати, на какой версии делфи нужно писать. По ходу ветки
> я так понял будет требоваться исходный код.
Код будет требоваться. Но вот чего уж я не ожидаю от профи, так это критичности к версии Delphi...
← →
Anonimus © (2005-01-21 04:02) [75]KilkennyCat © (20.01.05 22:58) [74]
> ошибочное мнение. Представьте себе, что я плачу за
> траффик. У меня скачали программу N раз. Сделанная с
> KOL весит в десять раз меньше. Во сколько раз меньше я
> заплачу?
Ну прогу можно ужать АСПпаком или УПСом
Код будет требоваться. Но вот чего уж я не ожидаю от профи, так это критичности к версии Delphi
С интернетом интересно получается. И с сокетами. В Д5 есть сокеты в стандартных ИДЕ компонентах, в Д7 - нет. К Д7 инди больше подходит, чем к Д5.
Ну а в общем больщого различия нет.
зы: почту смотри :)
← →
SPeller © (2005-01-21 04:10) [76]Anonimus © (21.01.05 4:02) [75]
Ну прогу можно ужать АСПпаком или УПСом
Тогда неужатая прога на KOL будет весить в 5 раз меньше. А если ещё и её ужать, то снова в 10 раз меньше. Только вот вредная привычка - использовать ехе-пакеры.
← →
KilkennyCat © (2005-01-21 04:25) [77]
> вредная привычка - использовать ехе-пакеры.
Согласен. Поэтому - KOL.
> С интернетом интересно получается. И с сокетами. В Д5 есть
> сокеты в стандартных ИДЕ компонентах, в Д7 - нет. К Д7 инди
> больше подходит, чем к Д5.
> Ну а в общем больщого различия нет.
Да, верно. Но я имею ввиду, что если возникнет необходимость профессионалу работать в D7, хотя он привык в D2, это не сильно его затормозит и уж тем более, не уменьшит качество.
Я уже говорил о фундаментальных знаниях. Тот, кто ими владеет, может адаптироваться. Тот, кто привык работать по примерам, без единой мысли компонуя готовые решения, вообщем, шаблонно, не сможет запуздырить иконку в часики, если они вдруг окажутся справа. Примеров такого отвратительного мышления в форуме "Основная" очень много.
Ну а если по существу, критичность не к версиям Делфи, а к компонентам - использование "пиратских" вариантов для фирмы неприемлемо.
← →
SPeller © (2005-01-21 04:33) [78]KilkennyCat © (21.01.05 4:25) [77]
использование "пиратских" вариантов для фирмы неприемлемо
Поэтому надо использовать стандартные. И если надо что-то сверх, то писать самомму и прилагать к проекту.
← →
KilkennyCat © (2005-01-21 04:36) [79]
> SPeller © (21.01.05 04:33) [78]
Да. Либо обосновать необходимость приобретения компонента. Если это будет экономически оправдано - приобретем, не проблема.
← →
KilkennyCat © (2005-01-21 04:46) [80]На данный момент около 20 кандидатов. Буду считать, что первый этап пройден. Прошу прощения у остальных, кто выразит согласие после опубликавония сего, но... Сейчас количества более чем достаточно. Если все получится, будет еще набор.
Давльнейшее обсуждение почтой. Всем спасибо.
С уважением,
Константин.
Страницы: 1 2 3 вся ветка
Форум: "Потрепаться";
Текущий архив: 2005.02.13;
Скачать: [xml.tar.bz2];
Память: 0.63 MB
Время: 0.045 c