![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 05.04.2008
Сообщений: 6
|
![]()
Всем доброго времени суток!
Помогите с решением следующени задачки: Дано N различных натуральных чисел. Напечатать все перестановки этих чисел. Вопрос в следующем: подскажите пожалуйста как осуществить сортировку этих чисел в массиве, да ещё при условии что если эллементы будут одинаковыми, то кол-во перестановок будет меньше??? |
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 12.10.2007
Сообщений: 1,204
|
![]()
Пожалуйста, выражайтесь яснее. Разбейте свой вопрос на отдельные предложения.
|
![]() |
![]() |
![]() |
#3 |
Регистрация: 05.04.2008
Сообщений: 6
|
![]()
Вопрос: подскажите алгоритм перестановки чисел в массиве по заданным условиям.
Условия: 1)если эллементы в массиве будут одинаковыми, то количество перестановок будет меньше! Например: дан массив из чисел 1 2 3 Кол-во перестановок будет равно 6 (факториал), но если будет, например, 1 2 2, то кол-во перестановок будет всего 3. 2) все перестановки должны быть выведены на экран и ни разу не повторяться. |
![]() |
![]() |
![]() |
#4 |
Участник клуба
Регистрация: 12.10.2007
Сообщений: 1,204
|
![]()
Задача с рекурсией, поэтому придется хранить все перестановки.
Код:
Из этих перестановок и элемента N формируем новые перестановки. Каждую перестановку добавляем в список, если ее еще не было. Код:
Код:
|
![]() |
![]() |
![]() |
#5 |
Регистрация: 05.04.2008
Сообщений: 6
|
![]()
Спасибо огромное! Это даже больше того что я хотел!
Щас будет разбираться!!! Вообще круто! СПАСИБО!!! |
![]() |
![]() |
![]() |
#6 |
Регистрация: 05.04.2008
Сообщений: 6
|
![]()
Ещё такой вопросик:
что значит в коде вызова строчка: S := ''; Компилятор ругаецтся!!! Это двойка (2)??? |
![]() |
![]() |
![]() |
#7 |
Участник клуба
Регистрация: 08.10.2007
Сообщений: 1,185
|
![]()
Перестановки с рекурсией? Неоптимальный метод.
|
![]() |
![]() |
![]() |
#8 |
Регистрация: 05.04.2008
Сообщений: 6
|
![]()
Somebody, это у нас лаба, 1 курс. С рекурсией обязательно! Без рекурсии сделал для массива с кол-вом эллементов 3! И все. Даже самые умы нашей группы ничего придумать не могут! :'(
Можешь предложить свой вариант плиз... |
![]() |
![]() |
![]() |
#9 |
Участник клуба
Регистрация: 08.10.2007
Сообщений: 1,185
|
![]()
Вариант без рекурсии
Код:
|
![]() |
![]() |
![]() |
#10 |
Регистрация: 05.04.2008
Сообщений: 6
|
![]()
Somebody, ну это понятно, только вот у тебя в коде выходит так, что пользователь не вводит числовые значения в массиве, а это как раз нужно!
|
![]() |
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Паскаль. Задачка по массиву | -ZaK- | Помощь студентам | 6 | 18.10.2010 00:08 |
Как задать рекурсией? | Irdis | Фриланс | 4 | 11.02.2010 02:01 |
Помогите с рекурсией | Serejka | Общие вопросы Delphi | 1 | 25.07.2008 15:36 |
Задачка. Паскаль. | Nexx | Помощь студентам | 5 | 30.11.2007 18:16 |
Паскаль. Задачка с массивами. | ProPaL | Помощь студентам | 4 | 11.11.2007 18:58 |