<MyRusakov.ru />

Программирование на C++ с Нуля до Гуру

Программирование на C++ с Нуля до Гуру

Данный курс научит Вас программировать на языке C++, который, несмотря на свой почтенный возраст, необычайно сильно востребован. Курс состоит из 6 разделов, посмотрев которые и выполнив все упражнения, Вы с нуля освоите этот язык и сможете создавать самые разные проекты любой сложности на C++.

Для закрепления материала из уроков к ним идёт множество упражнений.

Дополнительно к курсу идёт вспомогательная система, которая не даст Вам забросить начатое на полпути.

Также вместе с курсов Вы получаете Бонус "Программирование на C++ в Unreal Engine", в котором Вы научитесь создавать игры на C++ с использованием этого движка.

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Зачем Вы изучаете программирование/создание сайтов?

Виды коллекций в C#

Виды коллекций в C#

Как известно основным строительным блоком при создании программ являются переменные и структуры данных. И C# не является исключением. И каждый тип данных имеет собственное представление, и набор функций.

В C# есть множество типов. Одни из них это коллекции, включающие в себя список, словарь, очередь и так далее. В одной из статей мы рассматривали что представляет из себя список с параметром. И в сегодняшней статье мы рассмотрим оставшиеся типы коллекций: словарь, очередь, и стек.

И прежде вспомним что такое коллекции. Коллекции - это группы элементов одного типа, но с регулируемым размером; они более гибкие, чем массивы. Коллекции включают базовый класс List, а также более специализированные классы Dictionary, Queue и Stack, а также другие. Все они находятся в пространстве имен System.Collections.Generic.

Словарь.

Словарь (Dictionary) представляет из себя тип данных, в котором каждому набору значений соответствует один ключ. Т.е. он хранит данные в виде ключ-значение.

Чтобы добавить новые данные, используем как и в случае со списками метод Add().


// обязательно подключаем данную библиотеку
using System.Collections.Generic

Dictionary<string, string> imageTypes = new Dictionary<string, string>();

//imageTypes.Add("key", "value");
imageTypes.Add("bmp", "Bitmap");
imageTypes.Add("jpeg", "Joint Photographic Experts Group");
imageTypes.Add("png", "Portable Network Graphics");
imageTypes.Add("gif", "Graphics Interchange Format");

// Также в случае добавление в словарь, существующего ключа метод // Add вызовет исключение 

imageTypes.Add("jpeg", "JPEG"); //EXCEPTION

// System.ArgumentException: "An item with the same key has already 

// Для извлечения значения из словаря исподьзуем ключ

string name = imageTypes["png"]; //"Portable Network Graphics"


Очередь.

Очередь (Queue)- это структура реализующая концепцию первым пришел - первым вышел. Это означает, что элементы коллекции будут удалены из коллекции в том же порядке, в котором они были добавлены.


// Для добавления элементов в очередь используем метод Enqueue(),
// а для удаления Dequeue()

Queue<int> orders = new Queue<int>();
orders.Enqueue(1);
orders.Enqueue(2);
orders.Enqueue(3);
orders.Enqueue(4);

var firstValue = orders.Dequeue(); //1
var secondValue = orders.Dequeue(); //2

Стек.

Стек (Stack)- это набор элементов, реализованных в стиле последним пришел- первым вышел. Это означает, что самый последний добавленный элемент будет удален первым. Элементы, добавленные в стопку, называются вытесненными или pushed, а удаленные элементы называются выскочившими- popped.


// Для добавления элементов в Стек используем метод Push(),
// а для удаления метод Pop()

Stack<int> elements = new Stack<int>();
elements.Push(1);
elements.Push(2);
elements.Push(3);
elements.Push(4);

var firstValue = elements.Pop(); //4
var secondValue = elements.Pop(); //3


Таким образом, мы рассмотрели специализированные виды коллекций и увидели, как они себя ведут. И конечно количество структур данных не исчерпывается указанными в статье.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.