0 / 0 / 0
Регистрация: 05.10.2014
Сообщений: 22
1

Циклический двунаправленный список с заглавным звеном

10.12.2014, 20:49. Показов 2202. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Вот такое вот лихое задания.
Пусть L обозначает кольцевой (циклический) двунаправленный список с заглавным звеном (рис. 15) (с элементами E типа * char)
Определить функции,:
а) определяет, является ли список L пустым;
б) подсчитывает количество элементов списка L, в которых уровни «соседи»;
в) определяет, является ли в списке L хотя бы один элемент, равный следующий за ним (по кругу) элементу;
г) в списке L переставляет в обратном порядке все элементы между первым и последним вхождениями элемента E, если E входит в L не менее двух раз;
д) выводит список в файл.
Я даже не знаю с чего начать. Может кто то объяснить?
+Должна быть раздельная компиляция.
Миниатюры
Циклический двунаправленный список с заглавным звеном  
0
10.12.2014, 20:49
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.12.2014, 20:49
Ответы с готовыми решениями:

Помещение информации из линейного списка с заглавным звеном в массив и обратно
Народ, объясните пожалуйста что это такое и как это написать.

Циклический двунаправленный список
Имеется циклический двунаправленный список содержащий числа 1,3,5,6,7,9,8,11 . Указатель на голову списка Р . Удалить из списка 3 и 8...

Циклический двунаправленный список переделать в однонаправленный
Не могу никак из циклического двунаправленного переделать в однонаправленный список. ...

3
0 / 0 / 0
Регистрация: 05.10.2014
Сообщений: 22
14.12.2014, 02:08  [ТС] 2
ребята помощ очень нужна бросте хотя бы какойто теоретический материал.
0
шКодер самоучка
 Аватар для Max Dark
2305 / 1972 / 955
Регистрация: 09.10.2013
Сообщений: 4,444
Записей в блоге: 3
14.12.2014, 03:03 3
для затравки
C++
1
2
3
4
5
6
7
8
9
struct node {
    node* next, *prev;
    char data;
};
 
// а)
bool list_is_empty(node* head) {
    return head == NULL;
}
Добавлено через 50 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
// создание звена
node * make_node(char c) {
    node* tmp = new node;
    tmp->data = c;
    tmp->next = tmp->prev = NULL;
    return tmp;
}
// добавление после головы, возвращает голову
node* add_after(node* head, node* n){
    if(list_is_empty(head)) {
        n->next = n->prev = n; // список пуст, замыкаем звено на самого себя
        return n;
    }
    // вставляем звено
    n->prev = head;
    n->next = head->next;
    n->next->prev = n;
    head->next = n;
    return head;
}
// добавляет звено перед головой
node* add_before(node* head, node* n){
    if(head) head = head->prev;
    return add_after(head, n);
}
// удаляет список
void free_list(node* head) {
    node* tmp;
    if(list_is_empty(head))
        return;
    // размыкаем список
    head->prev->next = NULL;
    // далее можно работать как с односвязным
    while(head) {
        tmp = head;
        head = head->next;
        delete tmp;
    }
}
0
0 / 0 / 0
Регистрация: 05.10.2014
Сообщений: 22
14.12.2014, 22:44  [ТС] 4
Cra3y, можеш помочь со всей лабой, даже можно обсудить вопрос цены?

Добавлено через 4 часа 23 минуты
Всё я решил
0
14.12.2014, 22:44
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.12.2014, 22:44
Помогаю со студенческими работами здесь

Циклический двунаправленный список, упорядоченный по убыванию
Циклический двунаправленный список, упорядоченный по убыванию.

Двунаправленный список
Как в этом списке поменять ввод элементов с ручного на рандомный, помогите пожалуйста? #include <iostream.h> struct tochd ...

двунаправленный список
Двунаправленный список.Найти сумму первого и последнего элементарных.Заранее спасибо

Двунаправленный список
Люди, объясните пжлст, что такое двунаправленный список?

Двунаправленный список!
Не Класс! Помогите создать список (Двунаправленный хоронящий int a ) сама проблема в том что я не пойму как организовать ссылку на...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему

Редактор формул (кликните на картинку в правом углу, чтобы закрыть)
Опции темы

Новые блоги и статьи
Использование кэша Laravel - полный гайд
bytestream 18.02.2025
Кэширование - один из наиболее эффективных способов повышения производительности веб-приложений. В современном мире, где скорость загрузки страниц напрямую влияет на удержание пользователей и. . .
Создаем REST API в Laravel с аутентификацией и Passport
bytestream 18.02.2025
Разработка современных веб-приложений все чаще требует создания надежного и хорошо структурированного API. REST API стал стандартом де-факто для построения взаимодействия между клиентской и серверной. . .
Пайплайны в Laravel - полный гайд
bytestream 18.02.2025
Разработка современных веб-приложений часто требует обработки сложных процессов, состоящих из множества последовательных шагов. Например, при создании системы комментариев может потребоваться. . .
Как правильно использовать @required в Symfony
bytestream 18.02.2025
При разработке приложений на Symfony мы часто сталкиваемся с необходимостью внедрения зависимостей. Фреймворк предоставляет несколько способов управления этим процессом, и одним из таких инструментов. . .
Система безопасности в Laravel: возможности и примеры
Wired 18.02.2025
Каждый день появляются новые виды атак и уязвимостей, которые могут поставить под угрозу конфиденциальные данные пользователей и функционирование всей системы. В этом контексте выбор надежного. . .
Давайте сравним Django и Laravel
Wired 18.02.2025
Django и Laravel - два мощных инструмента, которые часто сравнивают между собой. Оба фреймворка предлагают разработчикам богатый набор возможностей для создания масштабируемых веб-приложений, но. . .
Laravel или React - что лучше?
Wired 18.02.2025
В разработке веб выбор правильного инструмента часто определяет успех всего проекта. Особенно интересным представляется сравнение Laravel и React - двух популярных технологий, которые часто. . .
Laravel 11: новые возможности, гайд по обновлению
Wired 18.02.2025
Laravel 11 - это новая масштабная версия одного из самых популярных PHP-фреймворков, выпущенная в марте 2024 года. Эта версия продолжает традицию внедрения передовых технологий и методологий. . .
Миграции в Laravel
Wired 18.02.2025
Разработка веб-приложений на Laravel неразрывно связана с управлением структурой базы данных. При работе над проектом часто возникает необходимость вносить изменения в схему базы данных - добавлять. . .
Аутентификация в Laravel
Wired 18.02.2025
В современном мире веб-разработки безопасность пользовательских данных становится критически важным аспектом любого приложения. Laravel, как один из самых популярных PHP-фреймворков, предоставляет. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru