Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
neske
1463 / 830 / 69
Регистрация: 26.03.2010
Сообщений: 2,830
#1

STL. - C++

21.03.2011, 11:30. Просмотров 1234. Ответов 14
Метки нет (Все метки)

Всем доброго времени суток.
У меня имеется два вопроса.

1) У нас имется квадратная матрица. И чтобы найти в строках, к примеру, максимальный элемент, мы сделаем так:
C++
1
*std::max_element (MAS[i], MAS[i]+SIZE);
А как с помощью тех же алгоритмов, искать максимумы в столбцах?

2) Представим, что мы на олимпиаде. Что предпочтительнее делать, пользоваться STL или описывать все руками?

Спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.03.2011, 11:30     STL.
Посмотрите здесь:

STL C++
C++ STL
C++ STL в С++
STL C++
STL C++
C++ STL
C++ STL
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mayonez
380 / 272 / 20
Регистрация: 26.12.2009
Сообщений: 875
21.03.2011, 11:50     STL. #2
Цитата Сообщение от neske Посмотреть сообщение
2) Представим, что мы на олимпиаде. Что предпочтительнее делать, пользоваться STL или описывать все руками?
Я только за STL
Зачем писать руками, когда все уже реализовано до тебя причем качественно.
Единственный случай, когда нужна максимальная скорость и без лишних проверок
neske
1463 / 830 / 69
Регистрация: 26.03.2010
Сообщений: 2,830
21.03.2011, 12:34  [ТС]     STL. #3
Цитата Сообщение от Mayonez Посмотреть сообщение
Единственный случай, когда нужна максимальная скорость и без лишних проверок
Я поэтому и привел пример с олимпиадой, когда как раз нужна максимальная скорость
Jupiter
Каратель
Эксперт C++
6549 / 3969 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
21.03.2011, 16:09     STL. #4
Цитата Сообщение от neske Посмотреть сообщение
Представим, что мы на олимпиаде.
руками

Добавлено через 1 минуту
через STL памяти жрет больше и соответсвенно работаеть дольше
neske
1463 / 830 / 69
Регистрация: 26.03.2010
Сообщений: 2,830
21.03.2011, 16:10  [ТС]     STL. #5
Понятно, спасибо.
ForEveR
Модератор
Эксперт С++
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
21.03.2011, 19:11     STL. #6
Maxwe11, А это смотря какой код, ага. В STL по-крайней мере все профессионально и сделано профессионалами, а собственный код может оказаться как минимум не айс.
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,131
21.03.2011, 19:18     STL. #7
Цитата Сообщение от neske Посмотреть сообщение

2) Представим, что мы на олимпиаде. Что предпочтительнее делать, пользоваться STL или описывать все руками?
Все просто. Смотрим условие олимпиады или спрашиваем у организаторов. А то, что вам тут отвечают - это гадание.
Nick Alte
Эксперт С++
1603 / 995 / 118
Регистрация: 27.09.2009
Сообщений: 1,918
Завершенные тесты: 1
21.03.2011, 19:18     STL. #8
Сообщение было отмечено автором темы, экспертом или модератором как ответ
1. В данном случае с точки зрения производительности неважно, чем воспользоваться. Но max из STL надёжный и проверенный.
Чтобы искать по столбцам, можно написать свой итератор или же написать поиск вручную. Если есть навыки работы с STL, то трудоёмкость примерно одинакова.
2. Предпочтительнее пользоваться STL, если умеешь это делать и знаешь особенности контейнеров и алгоритмов и предоставляемые ими гарантии. Рекомендую почитать Майерса, "Эффективное использование STL". В ряде случаев придётся делать своё, под специфику.
lavan
51 / 51 / 1
Регистрация: 21.03.2009
Сообщений: 371
21.03.2011, 19:20     STL. #9
с другой стороны если пользоваться тем что сделали проффесионалы,сам никогда не станешь проффесионалом.Т.е твой код никогда не станет айс
ForEveR
Модератор
Эксперт С++
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
21.03.2011, 19:23     STL. #10
Сообщение было отмечено автором темы, экспертом или модератором как ответ
lavan, Нет. Идиома повторного использования кода - рулит.
А к вашим словам можно сказать то, что не стоит пользоваться высоким уровнем, иначе никогда не станешь профи, лучше писать на асме или чисто в машинных кодах и не пользоваться никаким языком.
Ma3a
Эксперт C++
613 / 457 / 31
Регистрация: 28.01.2011
Сообщений: 605
21.03.2011, 19:27     STL. #11
lavan, а если вечно писать велосипеды, отрицая чужой хороший отлаженный код, а следовательно, не имея понятия , как нормальный код работает, то хорошим специалистом стать уж точно сложно.
neske
1463 / 830 / 69
Регистрация: 26.03.2010
Сообщений: 2,830
21.03.2011, 19:28  [ТС]     STL. #12
Цитата Сообщение от Chelioss Посмотреть сообщение
Все просто. Смотрим условие олимпиады или спрашиваем у организаторов. А то, что вам тут отвечают - это гадание.
Я немного не это имел в виду, но ответ всеравно уже получил, спасибо.


Nick Alte, ForEveR, lavan, Ma3a, всем спасибо
lavan
51 / 51 / 1
Регистрация: 21.03.2009
Сообщений: 371
21.03.2011, 19:32     STL. #13
нет я имел ввиду,что нужно пользоваться разработанными библиотеками для написания чего-то более или менее серьезного,а есть вещи которые надо писать самому
Mayonez
21.03.2011, 20:54
  #14

Не по теме:

я прошу прощения за глупый вопрос, но что значит

код никогда не станет айс
?
почему айс??

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.03.2011, 20:57     STL.
Еще ссылки по теме:

C++ STL
STL C++
C++ STL
C++ STL
C++ STL

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
ForEveR
21.03.2011, 20:57     STL.
  #15

Не по теме:

Определение выражения на лукморе

Ну... Я использую эту фразу давненько... Как-то привязалась. Не айс - не хорошо.

Yandex
Объявления
21.03.2011, 20:57     STL.
Ответ Создать тему
Опции темы

Текущее время: 11:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru