Другие языки программирования и технологии
Изучил несколько простых алгоритмов сортировки, осталось изучить быструю и слияние, нужно ли вообще писать эти алгоритмы
Во многих языках сейчас есть для массивов метод sort вот не знаю нужно ли вообще уметь писать код который сортирует методом слияния, или каким либо другим методом? В JS, Java, PHP есть свои методы для сортировок у PHP целый набор функций для сортировки единственное ток приходится писать логику сортировки, и то ток при необходимости. Но всё же я их изучаю для саморазвития, а вот в плане нужно ли в реальном проекте писать сортировку не понятно мне, как то не хочется тратить кучу времени, чтобы писать свою сортировку.
Есть куча синтаксисов, где нет встроенных алгоритмов сортировки. Вы правы, никакой обязательности в этом нет. Но для тренинга, в качестве примера для закрепления материала задание достойное. К примеру, люди, играя в симуляторы в массе не будут сажать реальные Боинги в а/п Орли (Сочи) или доставлять фурами грузы из Брасселя в Дюссель. И вы опять же правы, работаете вхолостую, бестолку, выхлопа нет и даже не намечается. Каждый по своему своё время убивает
Разные методы сортировки надо изучать не для того, чтобы потом постоянно самому писать их в своём коде, а для того, чтобы понимать их особенности и границы применимости. В том числе и границы применимости встроенных в язык сортировок. Попробуй, например, реализовать алгоритм BWT стандартной сортировкой...
Кроме того, сравнение сортировок - прекрасный способ изучения алгоритмической сложности и способов её анализа. Без чего невозможно оценить эффективность собственного кода и выбрать из множества возможных решений оптимальное для данных условий.
P.S. Ответь сам себе на вопрос: почему в ядре Linux используется именно пирамидальная сортировка, а в MySQL именно сортировка слиянием?
P.P.S. Осталось изучить??? Почти уверен, что про плавную сортировку ты даже не слышал. Третий том "Искусства программирования" Кнута целиком посвящён алгоритмам сортировки и поиска.
Кроме того, сравнение сортировок - прекрасный способ изучения алгоритмической сложности и способов её анализа. Без чего невозможно оценить эффективность собственного кода и выбрать из множества возможных решений оптимальное для данных условий.
P.S. Ответь сам себе на вопрос: почему в ядре Linux используется именно пирамидальная сортировка, а в MySQL именно сортировка слиянием?
P.P.S. Осталось изучить??? Почти уверен, что про плавную сортировку ты даже не слышал. Третий том "Искусства программирования" Кнута целиком посвящён алгоритмам сортировки и поиска.
Слово "нужно" здесь неуместно. Это никому не нужно кроме тебя самого. Потребителя интересует только конечный продукт. Если ты сможешь монетизировать умение писать сортировки то вперед
Писать не пиши, если есть встроенные функции. Но знать - полезно для развития кругозора и тренировки логического мышления.
Похожие вопросы
- сортировка массива. какой метод сортировки массива самый быстрый и эффективный?
- хочу написать игру, но нужно знать что пишешь, а писать долго думая не интересно
- как создать сайт???что для этого нужно??? я вообще ничего не знаю по поводу создания сайтов!помогите очень нужно!
- Нужно ли вообще создавать связной список в более высокоуровневых языках как PHP?
- В моих документах есть скрытая папка TEMP как её удалить полностью или нужно её вообще удалять?
- Проблема с алгоритмом быстрой сортировкой С++
- Говорят что готовые алгоритмы сортировок и поиска мало эффективны и не пригодны в использовании
- Нужно ли быть очень сильным математиком и хорошо уметь конструировать алгоритмы на позиции Software Engineer?
- Теория алгоритмов. Алгоритмы сортировки.
- Каждый ли программист должен изучить алгоритмы и структуры данных?