School 21
# Useful pages
# Sber
Implementation of the s21_graph_algorithms.h library:
- The library must be developed in C++ language of C++17 standard
 - The library code must be located in the src folder in the develop branch
 - Make it as a static library (with the s21_graph_algorithms.h header file)
 - The library must be represented as a 
GraphAlgorithmsclass that stores the implementation of algorithms on graphs. The classGraphAlgorithmsitself must not know anything about the internal representation of the graph from the classGraph. To interact with graph data, the classGraphAlgorithmscan only use the public methods and properties provided by theGraphclass. - Add to the Makefile s21_graph_algorithms.a target
*Prepare full coverage of theGraphAlgorithmsclass methods with unit-tests - The class 
GraphAlgorithmsmust contain at least the following public methods:depthFirstSearch(Graph &graph, int startVertex)- a non-recursive depth-first search in the graph from a given vertex. The function should return an array that contains the traversed vertices in the order they were traversed. When implementing this function, you must use the self-written data structure stack, which should be previously made as a separate static librarybreadthFirstSearch(Graph &graph, int startVertex)- breadth-first search in the graph from a given vertex. The function should return an array that contains the traversed vertices in the order they were traversed. When implementing this function, you must use the self-written data structure queue, which should be previously made as a separate static library
 - It is necessary to use self-written helper classes 
StackandQueue(you can reuse your solution from the CPP2 project for this). These classes must contain the following methods:init()- creating an empty stack/queuepush(value)- adding an element to the stack/queuepop()- getting an element from the stack/queue followed by its removal from the stack/queuepeek()- getting an element from the stack/queue without its removal from the stack/queue
 
In this and the following tasks, consider that the vertex numbers start from 1]]
# Common core projects
- libft
 - get_next_line
 - born2beroot
 - printf
 - push_swap
 - fract-ol
 - Fdf (haven’t done)
 - minitalk (haven’t done)
 - pipex
 - Philosophers
 - minishell (in progress)
 
# Future
# Links
- Rating 21
 - Калькулятор уровней для Школы 21 (seems to be dead)
 - 42evaluators
 - mharriso/school21-checklists