adjacency_matrix = [[0, 6, 6, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 7, 0, 0, 0, 0], [0, 0, 0, 0, 8, 0, 2, 0], [0, 0, 0, 0, 0, 9, 0, 0], [0, 0, 0, 0, 0, 0, 2, 0], [34, 0, 0, 0, 4, 0, 0, 4], [5, 0, 0, 0, 0, 5, 0, 0]]
list_edges = get_list_edges_by_adjacency_matrix(adjacency_matrix, peaks)
graph_info = get_array_of_graph_information(adjacency_matrix, peaks)
while 1:
num = input('''
Выберете необходимое действие: 1 - построения списка ребер;
2 - визуализировать заданный граф;
3 - представить граф в виде массива записей; 4 - поиск в представлениях (матрица смежности, список ребер,
массив записей); 5 - вывести размер объектов содержащего продставления графа
(матрица смежности, список ребер, массив записей); 6 - тест скорости работы подпрограмм пункта 4; Q - Выход.
Введите номер: ''')
# N - Задать свою матрицу смежности (строкой вида "[[1, ..., 2], ... [3, ..., 4]] ['Название вершины 1', ..., 'Название вершины
N']")
match num.upper(): case '1':
print('', *get_list_edges_by_adjacency_matrix(adjacency_matrix, peaks, False), sep='\n')
case '2':
view_graph(adjacency_matrix, peaks) case '3':
print(graph_info) case '4':
search_in_views(adjacency_matrix, peaks, list_edges, graph_info)
case '5':
view_objects_size(adjacency_matrix, list_edges,
graph_info)
case '6':
func_time_test(adjacency_matrix, list_edges, graph_info, peaks)
#case 'N':
#peaks = input('Задайте список вершин в виде
["Название вершины 1", ..., "Название вершины N"]')
# adjacency_matrix = input()
41
case 'Q': break
case _:
print('\n!Команда не найдена! Повторите ввод.')
if __name__ == "__main__": menu()
42