Реализовать алгоритм работы с динамической структурой данных – однонаправленный список - C (СИ) (77265)

Узнай цену своей работы

Формулировка задачи:

Друзья помогите пожалуйста написать прогу..... Необходимо организовать список, при этом необходимо написать программу таким образом, чтобы из функции main доступ к списку был возможен только с помощью функций добавления элемента в список, удаления элемента из списка и просмотра содержимого списка. Таким образом, необходимо все функции работы со списком вынести в отдельный файл, и для всех переменных и функции использовать необходимые модификаторы классов памяти. Реализовать алгоритм работы с динамической структурой данных – однонаправленный список: элементы добавляются и удаляются с начала, просматриваются с конца списка. Элементы списка – вещественные числа.

Решение задачи: «Реализовать алгоритм работы с динамической структурой данных – однонаправленный список»

textual
Листинг программы
#ifndef DS_SINGLY_H
#define DS_SINGLY_H
 
#include <stddef.h>
 
struct singly_node;
 
struct singly_list {
        struct singly_node *head;
};
 
void singly_print(const struct singly_list *list);
 
int singly_empty(const struct singly_list *list);
 
size_t singly_size(const struct singly_list *list);
 
void singly_clear(struct singly_list *list);
 
int singly_push_front(struct singly_list *list, double value);
 
int singly_push_back(struct singly_list *list, double value);
 
int singly_pop_front(struct singly_list *list);
 
int singly_pop_back(struct singly_list *list);
 
int singly_insert(struct singly_list *list, size_t position, double value);
 
int singly_erase(struct singly_list *list, size_t position);
 
#endif /* singly.h */

Объяснение кода листинга программы

В данном коде реализуется алгоритм работы с динамической структурой данных – однонаправленный список.

  1. Создается структура singly_node, которая будет представлять элемент списка.
  2. Создается структура singly_list, которая будет содержать указатель на голову списка.
  3. Реализуются функции для работы со списком:
    • singly_print - вывод элементов списка на экран;
    • singly_empty - проверка, пустой ли список;
    • singly_size - получение размера списка;
    • singly_clear - очистка списка;
    • singly_push_front - добавление элемента в начало списка;
    • singly_push_back - добавление элемента в конец списка;
    • singly_pop_front - удаление элемента из начала списка;
    • singly_pop_back - удаление элемента из конца списка;
    • singly_insert - вставка элемента в список на определенную позицию;
    • singly_erase - удаление элемента из списка на определенной позиции. Список содержит функции для работы с динамической структурой данных - однонаправленным списком. Он позволяет добавлять, удалять и перемещать элементы в произвольном месте списка. Кроме того, он позволяет проверить, пустой ли список, и выводит его содержимое на экран.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.75 из 5
Похожие ответы