Queue Stack Deque LinkedList in c++ and c# with Class Objects 44
Shows how to implement #queue, #deque, #LinkedList and #stack in c plus plus and c sharp which are defined by a #class. How to use functions like #Add, #AddLast, #push, #Enqueue, #RemoveFirst, #pop, #Dequeue, #Peek, #First, #Value, #front and #top.
c++ code:
#include <iostream> //for cout
#include <fstream> // for ofstream/ifstream
#include <string> //for << and getline
#include<list> //for lists
#include <queue> // for queue
#include<stack> //for stack
//#include<deque> //for deque
class file_element
{
public:
std::string line;
//std::string line = "";
};
int main(int argc, char *argv[])
{
std::ifstream input_file;
input_file.open("test.txt");
std::ofstream output_file("test.txt.out");
std::list<file_element> elements;
//std::queue<file_element*> elements;
//std::stack<file_element*> elements;
//std::deque<file_element*> elements;
std::string line;
for (int line_no = 1; std::getline(input_file, line); ++line_no)
{
file_element element;//for list only
element.line = line;
//file_element *element = new file_element();//for queue,stack and deque
//(*element).line = line;
//file_element *element = new file_element
//{
// line = line
//};//for queue,stack and deque
elements.push_back(element);//for list and deque
//elements.push(element);//for queue and stack
}
////std::list<file_element>::iterator iter = elements.begin();
//std::deque<file_element*>::iterator iter = elements.begin();
//for (; iter != elements.end(); ++iter)
//{
// //std::cout << (*iter).line << std::endl;//for list only
// //output_file << (*iter).line << std::endl;
// std::cout << (*(*iter)).line << std::endl;//for deque only
// output_file << (*(*iter)).line << std::endl;
//}
while (!elements.empty())
{
std::cout << (elements).front().line << std::endl;//for list only
output_file << elements.front().line << std::endl;
//std::cout << elements.front()->line << std::endl;//for queue and deque
//output_file << elements.front()->line << std::endl;
//std::cout << elements.top()->line << std::endl;//for stack only
//output_file << elements.top()->line << std::endl;
//elements.pop();//for queue and stack
elements.pop_front();//for deque and list
}
if (input_file)
{
input_file.close();
output_file.close();
}
std::cin.get();
return 0;
}
c# code:
using System;//for Console
using System.Collections.Generic;//for lists
using System.IO;//to use StreamReader
namespace lec2csharp
{
class File_element
{
//public string line;
public string line = "";
};
class Program
{
static void Main(string[] args)
{
StreamReader input_file = null;
input_file = new StreamReader("test.txt");
StreamWriter output_file = new StreamWriter("test.txt.out");
//List<File_element> elements = new List<File_element>();
//Queue<File_element> elements = new Queue<File_element>();
//Stack<File_element> elements = new Stack<File_element>();
LinkedList<File_element> elements = new LinkedList<File_element>();
string line = "";
for (int line_no = 1; (line = input_file.ReadLine()) != null; ++line_no)
{
File_element element = new File_element();
element.line = line;
//File_element element = new File_element
//{
// line = line
//};
//elements.Add(element);//for List
//elements.Enqueue(element);//for Queue
//elements.Push(element);//for Stack
elements.AddLast(element);//for LinkedList
}
foreach (File_element iter in elements)
{
Console.WriteLine(iter.line);//for all
output_file.WriteLine(iter.line);//for all
}
//while (elements.Count != 0)
//{
// //Console.WriteLine(elements.Peek().line);//for queue and stack
// //output_file.WriteLine(elements.Peek().line);
// Console.WriteLine(elements.First.Value.line);//for LinkedList
// output_file.WriteLine(elements.First.Value.line);
// //elements.Dequeue();//for queue
// //elements.Pop();//for stack
// elements.RemoveFirst();//for LinkedList
//}
if (input_file != null)
{
input_file.Close();
output_file.Close();
}
Console.ReadLine();
}
}
}
#csharp #cplusplus #tutorial
How to work with Stacks in C#
Linked List in C#
C# Creating a Linked List of Objects
Что делает видео по-настоящему запоминающимся? Наверное, та самая атмосфера, которая заставляет забыть о времени. Когда вы заходите на RUVIDEO, чтобы посмотреть онлайн «Queue Stack Deque LinkedList in c++ and c# with Class Objects 44», вы рассчитываете на нечто большее, чем просто загрузку плеера. И мы это понимаем. Контент такого уровня заслуживает того, чтобы его смотрели в HD 1080, без дрожания картинки и бесконечного буферизации.
Честно говоря, Rutube сегодня — это кладезь уникальных находок, которые часто теряются в общем шуме. Мы же вытаскиваем на поверхность самое интересное. Будь то динамичный экшн, глубокий разбор темы от любимого автора или просто уютное видео для настроения — всё это доступно здесь бесплатно и без лишних формальностей. Никаких «заполните анкету, чтобы продолжить». Только вы, ваш экран и качественный поток.
Если вас зацепило это видео, не забудьте взглянуть на похожие материалы в блоке справа. Мы откалибровали наши алгоритмы так, чтобы они подбирали контент не просто «по тегам», а по настроению и смыслу. Ведь в конечном итоге, онлайн-кинотеатр — это не склад файлов, а место, где каждый вечер можно найти свою историю. Приятного вам отдыха на RUVIDEO!
Видео взято из открытых источников Rutube. Если вы правообладатель, обратитесь к первоисточнику.