Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.10.2017, 19:50   #1
Andry95
Пользователь
 
Регистрация: 01.03.2016
Сообщений: 24
По умолчанию Поменять местами числа в очереди

Код:
Random rnd = new Random();
            int n = 20;
            Queue<int> random = new Queue<int>();
            while (n-- > 0)
            {
                random.Enqueue(rnd.Next(-10, 11));
            }
Создана новая очередь, суть задания состоит в том, что бы в этой очереди поменять местами первый и последний элемент, вообще последовательность чисел нужно вводить с клавиатуры, но пусть пока будет рандом
Как реализовать этот обмен, проводится ли аналогия с массивом или действовать методами очереди?
Andry95 вне форума Ответить с цитированием
Старый 08.10.2017, 23:52   #2
ZnZ
Пользователь
 
Регистрация: 14.06.2017
Сообщений: 45
По умолчанию

В Queue есть метод который удаляет первый элемент из очереди и возвращает его, так ты бери этот элемент, и потом просто делай Add, и он попадёт в конец
ZnZ вне форума Ответить с цитированием
Старый 09.10.2017, 09:50   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от ZnZ Посмотреть сообщение
В Queue есть метод который удаляет первый элемент из очереди и возвращает его, так ты бери этот элемент, и потом просто делай Add, и он попадёт в конец
не прокатит. Первый элемент действительно станет в конец очереди. но тот элемент, который был до этого последним, станет предпоследним. а задача состоит в том, чтобы поменять эти элементы местами.
я пока вижу вариант только с дополнительным массивом/очередью, с помощью которых можно решить поставленную задачу. Но это грубо и некрасиво. Возможно есть решение лучше, красивее и эффективнее, через использование методов очереди Queue.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 09.10.2017, 18:55   #4
Andry95
Пользователь
 
Регистрация: 01.03.2016
Сообщений: 24
По умолчанию

мне вообще кажется, что использовадь очередь не рационально, массив - ок, но очередь слишком мало вариантов реализации задач в ней
Andry95 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поменять местами некие элементы(целые числа) в одномерном массиве - C++ ggjgj Общие вопросы C/C++ 10 25.10.2016 16:48
Поменять местами первую и последнюю , вторую и предпоследнюю и т.д цифры числа Kat9 Паскаль, Turbo Pascal, PascalABC.NET 2 22.05.2013 14:35
Машины Тьюринга,поменять местами 2 двоичных числа barsiva Помощь студентам 1 02.10.2011 12:40
Даны действительные числа, а1 а20 .Поменять в этой последовательности местами: Zhasik Помощь студентам 1 27.12.2010 18:18