61 lines
4.0 KiB
C#
61 lines
4.0 KiB
C#
using System;
|
||
using System.Collections.Generic;
|
||
using System.ComponentModel;
|
||
using System.Data;
|
||
using System.Drawing;
|
||
using System.Linq;
|
||
using System.Text;
|
||
using System.Threading.Tasks;
|
||
using System.Windows.Forms;
|
||
|
||
namespace Cursach
|
||
{
|
||
public partial class InfoForm : Form
|
||
{
|
||
public InfoForm()
|
||
{
|
||
InitializeComponent();
|
||
ShowDocumentation();
|
||
}
|
||
|
||
private void ShowDocumentation()
|
||
{
|
||
# region BFSInfo
|
||
|
||
documentBFSInfo.Clear();
|
||
documentBFSInfo.SelectionFont = new Font("Arial", 12);
|
||
documentBFSInfo.SelectionFont = new Font(documentBFSInfo.SelectionFont, FontStyle.Bold);
|
||
documentBFSInfo.AppendText("Описание\n");
|
||
documentBFSInfo.SelectionFont = new Font("Arial", 10);
|
||
documentBFSInfo.SelectionFont = new Font(documentBFSInfo.SelectionFont, FontStyle.Regular);
|
||
documentBFSInfo.AppendText(
|
||
"Поиск в ширину (англ. breadth-first search, BFS) — один из методов обхода графа. " +
|
||
"Пусть задан граф \ud835\udc3a=(\ud835\udc49,\ud835\udc38) и выделена исходная вершина" +
|
||
" \ud835\udc60. Алгоритм поиска в ширину систематически обходит все ребра \ud835\udc3a" +
|
||
" для «открытия» всех вершин, достижимых из \ud835\udc60, вычисляя при этом расстояние" +
|
||
" (минимальное количество рёбер) от \ud835\udc60 до каждой достижимой из \ud835\udc60" +
|
||
" вершины. Алгоритм работает как для ориентированных, так и для неориентированных графов.\n\n");
|
||
documentBFSInfo.SelectionFont = new Font("Arial", 12);
|
||
documentBFSInfo.SelectionFont = new Font(documentBFSInfo.SelectionFont, FontStyle.Bold);
|
||
documentBFSInfo.AppendText("Работа алгоритма\n");
|
||
documentBFSInfo.SelectionFont = new Font("Arial", 10);
|
||
documentBFSInfo.SelectionFont = new Font(documentBFSInfo.SelectionFont, FontStyle.Regular);
|
||
documentBFSInfo.AppendText(
|
||
"Поиск в ширину работает путём последовательного просмотра отдельных уровней графа," +
|
||
" начиная с узла-источника \ud835\udc62.\n\nРассмотрим все рёбра (\ud835\udc62,\ud835\udc63)," +
|
||
" выходящие из узла \ud835\udc62. Если очередной узел \ud835\udc63 является целевым узлом, то поиск" +
|
||
" завершается; в противном случае узел \ud835\udc63 добавляется в очередь. После того, как будут" +
|
||
" проверены все рёбра, выходящие из узла \ud835\udc62, из очереди извлекается следующий узел" +
|
||
" \ud835\udc62, и процесс повторяется.\n");
|
||
#endregion
|
||
|
||
// # region SaveLoadInfo
|
||
// documentBFSInfo.Clear();
|
||
// documentBFSInfo.SelectionFont = new Font("Arial", 10);
|
||
// documentBFSInfo.AppendText("Сохрание осуществляется в через сохраниение класса StateList в бинарный файл с использованием технологии серверной сериализации brotobuf (библиотека для C# protobuf-net).\n\n");
|
||
// documentBFSInfo.AppendText("Бинарный файл имеет разрешение .state, что позволяет не путать файлы с другими расширениями.\n\n");
|
||
// #endregion
|
||
|
||
}
|
||
}
|
||
} |