Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
3 / 3 / 0
Регистрация: 10.11.2011
Сообщений: 126

Сортировка списка

12.04.2014, 04:55. Показов 1528. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дан список сел и расстояния до них от города. Нужно вывести села в порядке удаленности от города. Городов до 10^8. Расстояния - целые числа, <= 10^6
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.04.2014, 04:55
Ответы с готовыми решениями:

"Сортировка двусвязного списка путем исключения элемента с минимальным значением и включения его в начало нового списка
Здравствуйте! Возникла проблема с программой. Тема: &quot;Сортировка двусвязного списка путем исключения элемента с минимальным значением и...

Сортировка списка
Приветствую всех! Есть небольшая проблема: не могу понять, как создать сортировку в алфавитном порядке. Вот код: void SortList() { ...

Сортировка списка
Здравствуйте, не совсем понимаю как должна быть реализована сортировка вставками в деке. Что имеется на данный момент: class List...

17
12.04.2014, 07:34

Не по теме:

Цитата Сообщение от freewrestler Посмотреть сообщение
Городов до 10^8
Это для императора галактики?
На земле столько городов нет: http://www.statisticbrain.com/... the-world/

0
3 / 3 / 0
Регистрация: 10.11.2011
Сообщений: 126
12.04.2014, 07:35  [ТС]
Условие задачи таково
0
 Аватар для IrineK
2023 / 1641 / 425
Регистрация: 23.02.2011
Сообщений: 6,002
Записей в блоге: 25
12.04.2014, 07:39
freewrestler,
Разъясните, у вас городов 10^8 и у каждого города - свои села
или
у вас город один и у него 10^8 сел?
0
3 / 3 / 0
Регистрация: 10.11.2011
Сообщений: 126
12.04.2014, 07:48  [ТС]
Есть один город. А затем села - у каждого собственное название и определенное расстояние от этого города. Нам дано количество сел N( 1 <= N <= 10^8), а также даны названия этих сел и расстояние для каждого села до города. Нужно вывести список сел в порядке удаленности. К примеру:

Входные данные:
3
Дыбенко 35
Каменномостский 13
Утриш 18

Выходные данные:
Каменномостский 13
Утриш 18
Дыбенко 35

Добавлено через 4 минуты
Нужно сделать структурами, создать функцию сортировки, а после ввода данных вызвать эту функцию. Но к сожалению реализовать не могу..
0
 Аватар для IrineK
2023 / 1641 / 425
Регистрация: 23.02.2011
Сообщений: 6,002
Записей в блоге: 25
12.04.2014, 07:51
Количество намекает на то, что нужно создавать стек, а затем вставлять следующий пункт, используя бинарный поиск.
0
3 / 3 / 0
Регистрация: 10.11.2011
Сообщений: 126
12.04.2014, 07:52  [ТС]
а ну тогда совсем молчу ))
0
 Аватар для IrineK
2023 / 1641 / 425
Регистрация: 23.02.2011
Сообщений: 6,002
Записей в блоге: 25
12.04.2014, 08:02
Если будете сортировать как обычно - это долго.

Добавлено через 10 минут
Цитата Сообщение от freewrestler Посмотреть сообщение
ну тогда совсем молчу
Если можно пользоваться STL, то не так уж страшно.

Если в задании указано, что нужно написать все самому - тогда немного страшнее.
0
3 / 3 / 0
Регистрация: 10.11.2011
Сообщений: 126
12.04.2014, 08:04  [ТС]
STL-ом пользоваться думаю можно, а об обязательстве решения самому не сказано)
0
zzzZZZ...
 Аватар для dzrkot
527 / 358 / 94
Регистрация: 11.09.2013
Сообщений: 2,041
12.04.2014, 08:16
sort();
0
3 / 3 / 0
Регистрация: 10.11.2011
Сообщений: 126
12.04.2014, 08:17  [ТС]
sort - Timelimit exceeded =))
0
 Аватар для IrineK
2023 / 1641 / 425
Регистрация: 23.02.2011
Сообщений: 6,002
Записей в блоге: 25
12.04.2014, 08:44
Сортировки дают кво операций ~ N2
Если у вас N = 108, то N2 = 1016
Комп способен на порядка 107 в секунду.
Значит, вам нужно 109 секунд = 32 года.

Добавлено через 10 минут
Кво операций при бинарном поиске по N элементам 1 + log2N
Искать будем по списку, т.е. среднее кво операций будет вполовину меньше.
Нужно расставить N элементов, т.е. общее кво операций
N(1 + log2N) / 2

При N = 108 М = 1 + 8*log210 = 1 + 8*3,3 = 28 операций
Поскольку, список нарастает от 1 до N, среднее кво операций равно половине этой величины, т.е. 14 операций на одну вставку.
Для N вставок: 14 * 108 операций
Комп справится за 140 с.
0
3 / 3 / 0
Регистрация: 10.11.2011
Сообщений: 126
12.04.2014, 08:45  [ТС]
а 140 секунд это разве мало?)
0
 Аватар для IrineK
2023 / 1641 / 425
Регистрация: 23.02.2011
Сообщений: 6,002
Записей в блоге: 25
12.04.2014, 08:47
Все познается в сравнении.
Если мысленно представить 32 года и 140 секунд, то ответ очевиден.
0
3 / 3 / 0
Регистрация: 10.11.2011
Сообщений: 126
12.04.2014, 08:47  [ТС]
С этим полностью согласен)
0
 Аватар для Voivoid
710 / 283 / 16
Регистрация: 31.03.2013
Сообщений: 1,340
12.04.2014, 11:20
Сортировки дают кво операций ~ https://www.cyberforum.ru/cgi-bin/latex.cgi?{N}_{2}
Почему сразу квадрат? N log N же ( не, ну я не спорю, есть и алгоритмы с квадратичной сложностью, но кто их будет использовать - сам себе злобный буратина )
0
 Аватар для IrineK
2023 / 1641 / 425
Регистрация: 23.02.2011
Сообщений: 6,002
Записей в блоге: 25
12.04.2014, 12:36
N log N заявлена в sort
Но
Цитата Сообщение от freewrestler Посмотреть сообщение
sort - Timelimit exceeded =))
Значит, надо искать другие пути.

Добавлено через 6 минут
Voivoid,
сложность N log N достигается в среднем. Но возможны "худшие" случаи. Тогда сортировка деградирует до N2.
Например, для быстрой сортировки можно почитать здесь.
0
 Аватар для Voivoid
710 / 283 / 16
Регистрация: 31.03.2013
Сообщений: 1,340
12.04.2014, 17:09
Ну, например для merge sort N log N даже в худшем случае. А для quick sort да, асимптотика действительно в ряде случаев вырождается до квадратичной, но с этим давным давно уже научились бороться, сейчас в библиотеках quick sort в чистом виде нигде не используются, везде применяются разного рода ухищрениях позволяющие избавиться от квадратичной сложности.

А по поводу задачи, то думаю имеет смысл попробовать counting sort. Если ограничения по памяти нет, то должно прокатить
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.04.2014, 17:09
Помогаю со студенческими работами здесь

Сортировка списка
Получается, что пользователь вносит книги в библиотеку, записывая имя писателя, название, год издания и тд... После чего он может...

Сортировка списка
Нужно отсортировать списком класс Flight. class Flight { public: char flight_ID; char city_of_departure;

Сортировка списка
Всем привет) Нужно реализовать сортировку списка, линейного однонаправленного. Написал, но что-то как-то не правильно... void...

Сортировка списка
есть список list&lt;Student&gt; g (содержит n-ое количество экземпляров класса). Нужно сделать отдельную функцию которая принимает этот список и...

Сортировка списка
Всем привет задание такое Разработать программу работы со связным списком сеансов в кинотеатре. Для каждого сеанса должна храниться...


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru