На нашем сайте Вы сможете найти готовые курсовые и дипломные работы по программированию
Сейчас работаем

Список связный C#

Задание

Исходными данными являются данные, вводимы пользователем. Данные описывают некоторую сущность, например, персону (фамилия, возраст, пол), книгу (название, автор, количество страницы, понравилась или нет) и т.п. Придумайте сами, какие сущности вы будете описывать. Приведенные выше в примерах использовать запрещается. Требования к данным – элемент, содержащий данные, обязательно должен включать в себя данные типа int, string  и bool. Какое из них считается ключевым полем (ключом) - на выбор студента.

Разработать класс MyList, реализующий организацию данных в виде связного списка и обеспечивающего следующую функциональность:

  • включение нового элемента в начало списка;
  • включение нового элемента в конец списка;
  • поиск элемента с заданным значением ключа;
  • включение нового элемента в упорядоченный список без нарушения его упорядоченности;
  • удаление элемента из упорядоченного списка;
  • визуализацию текущего состояния списка.

 

Разработать главную программу обеспечивающую:

  • ввод с программного интерфейса конкретных значений данных;
  • создание элемента, хранящего введенные пользователем значения данных;
  • выполнения с этими данными перечисленных выше операций.

Пользовательский интерфейс

Примерный пользовательский интерфейс содержит следующие компоненты (в контексте выше приведенного примера содержимого элемента):

  • Текстбоксы (и соответствующие подписи их) для ввода фамилии, возраста и пола.
  • Кнопка "Создать объект", по нажатию которой создается объект с данными, введенными в выше указанные текстбоксы.
  • Кнопка "В начало", по нажатию которой созданный объект с данными помещается в начало списка.
  • Листбокс для вывода содержимого списка.
  • Кнопка "Визуализировать", по нажатию которой содержимое списка выводится в листбокс.
  • Кнопка "В конец", по нажатию которой созданный объект с данными помещается в конец списка.
  • Кнопка "Упорядоченно", по нажатию которой созданный объект с данными помещается в упорядоченный список, не нарушая его упорядоченности.
  • Текстбокс для ввода значения ключа для операций поиска и удаления.
  • Кнопка "Найти" для выполнения поиска элемента по заданному ключу и вывода его содержимого.
  • Кнопка "Удалить" по нажатию которой элемент с заданным значение ключа удаляется из списка .

Содержание отчета к программе

Итого отчет к программе и постановка задачи на 7 страницах 

Фрагмент программного кода

using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;

namespace MyList
{
    // елемент списка
    class MyList
    {
        // Указатель на начало списка
        MyListLink first = null;
        // Ссылка на последний элемент
        MyListLink last = null;


        // добавление в конец
        public void Prepend(MyData guitar)
        {
            MyListLink newMyListLink = new MyListLink(guitar);
            // если начальный пуст - заполним его
            if (this.first == null)
            {
                newMyListLink.prev = null;
                this.first = newMyListLink;
                return;
            }
            // добавим в конец
            MyListLink lastMyListLink = GetLastLink(this);
            lastMyListLink.next = newMyListLink;
            newMyListLink.prev = lastMyListLink;
        }


        // Вывод списка
        public void Visual(ListBox textbox, MyList Links)
        {
            // берем первый из списка
            MyListLink current = Links.first;
            
            do
            {
                // заполняем коллекцию
                textbox.Items.Add(current.data.Brand + ", "+ current.data.Model + ", "+ current.data.Amount + ", "+ current.data.Avail);
                current = current.next;  
                // пока не кончаться  жлементы
            } while (current != null);
            

        }

        // добавляем в начало
        public void Append(MyData guitar)
        {
            MyListLink newMyListLink = new MyListLink(guitar);

            newMyListLink.next = this.first;
            newMyListLink.prev = null;

            if (this.first != null)
            {
                this.first.prev = newMyListLink;
            }

            this.first = newMyListLink;
        }

        // Получение последнего элемента списка
        private MyListLink GetLastLink(MyList List)
        {
            MyListLink temp = List.first;
            while (temp.next != null)
            {
                temp = temp.next;
            }
            return temp;
        }

        // Добавляет элемент на указанную позицию
        
        public void InsertAfter(int position, MyData guitar)
        {
  

Скриншот архива с проектом

Пояснения по запуску программы

.NET Core 3.1 WinForms

  • Автор работы: Kap
Купить 600,00 
Сразу после оплаты Вы сможете скачать работу и мы вышлем дополнительно файл с работой на электронную почту. Исходник программ Вы сможете отредактировать, как Вам нужно.
Комментарии (0)

/ /

Оставить комментарий

Ты не можешь комментировать

Только зарегистрированые пользователи имеют возможность комментировать работы
Купить

600,00 

Покупается впервые!
Сразу после оплаты Вы сможете скачать работу и мы вышлем дополнительно файл с работой на электронную почту. Исходник программ Вы сможете отредактировать, как Вам нужно.

Заказать через

MyList.zip
283093
САОД. ЗАДАНИЕ 4. Структура СВЯЗНЫЙ СПИСОК.docx
37135
Оцени работу

рейтинг

Список связный C#
Классификация списков, в частности, различает связный список, список с циклами, циклический список, ветвящийся список, список в векторной форме. Связным списком называется структура данных, состоящая из элементов, каждый из которых содержит как собственно данные, так и одну (однонаправленный список) или две (двунаправленный список) ссылки на следующий и/или предыдущий элемент списка.
Категория: Образование
Стоимость: 600,00