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

Сортировка массива: одинаковые числа стоят рядом

22.03.2017, 00:56. Показов 1569. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите, пожалуйста отсортировать массив таким образом, чтоб одинаковые стояли рядом.
Исходный массив: 2 1 2 4 2 2 1
Упорядоченный: 2 2 2 2 1 1 4
Мой вариант(вылетает)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
template <class T>
void NormVyvod(T *mas, int n)
{
    for (int i = 0; i < n; i++)
    {
        for (int j = i; j < n; j++)
        {
            if (Compare(mas[i], mas[j]))
            {
                T tmp = mas[i];
                mas[i] = mas[j];
                mas[j] = tmp;
            }
            else continue;
        }
    }
    for (int i = 0; i<n; i++)
        cout << mas[i] << ' ';
    cout << endl;
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.03.2017, 00:56
Ответы с готовыми решениями:

Поиск числа последовательностей, в которых никакие 2 единицы не стоят рядом
Здравствуйте! Решаю задачу вот по этой ссылке: https://informatics.msk.ru/mod/statements/view.php?id=654 Все, вроде бы, правильно, но в...

Определить количество перестановок, в которых никакие три одинаковые цифры не стоят рядом
2.Дано число 123311232. Определить сколько перестановок, в которых никакие три одинаковые цифры не стоят рядом

Сколько n-значных чисел можно образовать из двух цифр в которых три одинаковые цифры не стоят рядом?
Сколько n-значных чисел можно образовать из двух цифр 5 и 9, в которых три одинаковые цифры не стоят рядом? Вывести ответ для n = 30. ...

10
4949 / 2289 / 287
Регистрация: 01.03.2013
Сообщений: 5,989
Записей в блоге: 32
22.03.2017, 00:58
Просто отсортировать не вариант? Если нет - то каков критерий? Встретили первое ранее не встреченное - сгребаем к нему остальные и идем дальше встречать?
0
0 / 0 / 0
Регистрация: 23.11.2016
Сообщений: 30
22.03.2017, 01:35  [ТС]
_Ivana, да именно так. Встретили первое ранее не встреченное-к нему остальные и т.д.
0
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
12933 / 6801 / 1820
Регистрация: 18.10.2014
Сообщений: 17,213
22.03.2017, 01:38
Цитата Сообщение от Александра_99 Посмотреть сообщение
Встретили первое ранее не встреченное-к нему остальные
А относительный порядок групп - оговаривается или может быть произвольным?
0
4949 / 2289 / 287
Регистрация: 01.03.2013
Сообщений: 5,989
Записей в блоге: 32
22.03.2017, 01:54
На примере интов, в темплейтах не силен
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void NormVyvod(int *mas, int n) {
    int i=0;
    while(i<n) {
        int k=i+1;
        for (int j=k; j<n; j++) {
            if (mas[i]==mas[j])
            {
                int tmp = mas[k];
                mas[k] = mas[j];
                mas[j] = tmp;
                k++;
            }
        }
        i=k;
    }
}
1
0 / 0 / 0
Регистрация: 23.11.2016
Сообщений: 30
22.03.2017, 01:54  [ТС]
TheCalligrapher, да. Надо отсортировать эл-ты по убыванию частоты их встречаемости. Саму программу я написала, но вот вывод плохой: первые ставит как надо, а вот с остальными проблемы
0
4949 / 2289 / 287
Регистрация: 01.03.2013
Сообщений: 5,989
Записей в блоге: 32
22.03.2017, 01:57
Цитата Сообщение от Александра_99 Посмотреть сообщение
Надо отсортировать эл-ты по убыванию частоты их встречаемости.
О, какие подробности выясняются А сначала, как настоящая девушка, интриговала и обманывала
Цитата Сообщение от Александра_99 Посмотреть сообщение
_Ivana, да именно так. Встретили первое ранее не встреченное-к нему остальные и т.д.
Ждем продолжения интриги
1
0 / 0 / 0
Регистрация: 23.11.2016
Сообщений: 30
22.03.2017, 02:07  [ТС]
_Ivana, Огромное вам спасибо Сейчас протестила-работает!
0
4949 / 2289 / 287
Регистрация: 01.03.2013
Сообщений: 5,989
Записей в блоге: 32
22.03.2017, 02:09
Александра_99, да не за что Только

1) не вижу спасиба - ни огромного ни маленького
2) оно работает именно так, как вы написали вначале. Но не так, как написали потом
0
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
12933 / 6801 / 1820
Регистрация: 18.10.2014
Сообщений: 17,213
22.03.2017, 02:27
Цитата Сообщение от Александра_99 Посмотреть сообщение
Сейчас протестила-работает!
Хм.. Так а как же:

Цитата Сообщение от Александра_99 Посмотреть сообщение
Надо отсортировать эл-ты по убыванию частоты их встречаемости.
???
0
4949 / 2289 / 287
Регистрация: 01.03.2013
Сообщений: 5,989
Записей в блоге: 32
22.03.2017, 02:28
TheCalligrapher, так на тестовом приведенном примере оно волшебным образом совпадает
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.03.2017, 02:28
Помогаю со студенческими работами здесь

Сколько n-значных чисел можно составить, используя цифры 5 и 9, в которых три одинаковые цифры не стоят рядом?
Две цифры Сколько n-значных чисел можно составить, используя цифры 5 и 9, в которых три одинаковые цифры не стоят рядом? Для n=3...

Найти n! и проверить, встречаются ли в записи этого числа две рядом стоящие одинаковые цифры
Найти n! и проверить,встречаются ли в записи этого числа две рядом стоящие одинаковые цифры.

Найти n! и проверить, встречаются ли в записи этого числа две рядом стоящие одинаковые цифры
Найти n! и проверить, встречаются ли в записи этого числа две рядом стоящие одинаковые цифры

Найти вероятность того, что А и В стоят рядом
Двое друзей (А и В) стоят в очереди из 8 человек.Най*ти вероятность того, что А и В стоят рядом

Найти два минимум в массиве, которые не стоят рядом
Ну собственно в названии темы понятно, что нужно. Минимальная длина массива = 5. Также минимум не может стоять на индексе 0 и на индексе...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru