|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
15.02.2017, 18:10 | #1 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
Циклический сдвиг элементов списка
Задание: Циклический сдвиг элементов списка вправо на N позиций.
Помогите пожалуйста найти ошибку if (!head) { cout << "Список пуст!" << endl; return; } list *p;list *pr; p=head; int count=0; while((p->next)!=NULL){ if(count>=num) { return; } pr=p; p=p->next; if(p->next==NULL) { p->next=head; head=p; pr->next=NULL; count++; } } |
15.02.2017, 18:18 | #2 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Перейди на стр.2
Последний раз редактировалось ura_111; 15.02.2017 в 18:51. |
15.02.2017, 18:20 | #3 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
Первый - не кольцевой.
|
15.02.2017, 18:26 | #4 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
Последний элемент присоединяем перед головой, предыдущий указывает на нулл |
15.02.2017, 18:30 | #5 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
[IMG]file:///C:/Users/home/Desktop/111.png[/IMG]
|
15.02.2017, 18:39 | #6 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
Задумка вот такая
|
15.02.2017, 18:56 | #7 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
// Добавление в начало списка
void CListRightShiftItems::addItem(int item) { list *newItem = new list; newItem->key = item; if (head == NULL) { head = newItem; head->next = NULL; } else { newItem->next = head; head = newItem; } } Однонаправленный |
15.02.2017, 19:03 | #8 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Ты всё ещё продолжаешь рисовать 2 разных списка?
У тебя две последовательности экземпляров структуры/класса? |
15.02.2017, 19:06 | #9 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
Один экземпляр. Изначально у меня первый вариант - простой односвязный список
Затем по ходу выполнения программы он получается замкнутым и потом в нужном месте размыкаю его. |
15.02.2017, 19:23 | #10 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
Первый вид: там где последний элемент ссылается на NULL
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Циклический сдвиг элементов списка | artilun | Помощь студентам | 3 | 12.02.2017 13:15 |
Осуществить циклический сдвиг элементов прямоугольной матрицы на n элементов вправо или вниз | Nekro95 | Помощь студентам | 12 | 07.11.2012 22:31 |
циклический сдвиг элементов массива | Carter | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 19.12.2011 19:54 |
Не получается циклический сдвиг элементов списка влево | Джиксер | Общие вопросы C/C++ | 5 | 02.06.2010 23:38 |