Graph::setEdgeCosts

Ребро присвоений стоит к ребрам.

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.

Синтаксис

Graph::setEdgeCosts(G, Edge, EdgeCosts, <OnlySpecifiedEdges>)

Описание

Graph::setEdgeCosts(G, Edges, EdgeCosts) возвращает график где Edges имейте преимущество стоит EdgeCosts.

Примечание

Если OnlySpecifiedEdges утверждается, и неориентированный граф должен быть изменен, только заданные ребра используются а не инвертированные единицы. Например, если вызов Graph::setEdgeCosts(G, [[u,v]], [1]) вызывается, только ребро [u, v] добирается 1. Ребро [v, u] не будет изменен.

Примечание

Замена None может использоваться, когда заданное ребро не должно получать присвоенные затраты.

Примеры

Пример 1

Сначала позволяет, задают график без затрат ребра:

G1 := Graph::createCircleGraph(3):
Graph::getEdgeCosts(G1)

FAIL был возвращен, потому что никакое ребро не стоит заданного werde.

Graph::getEdges(G1);
G1 := Graph::setEdgeCosts(G1, [[1, 2], [3, 1]], [5, 1/2]):
Graph::getEdgeCosts(G1)

Первый выход показывает всем ребрам и второму присвоенные затраты ребра.

G1 := Graph::setEdgeCosts(G1, [[2, 3]], [infinity]):
Graph::getEdgeCosts(G1)

Легко видеть что только стоимость ребра [2,3] был изменен.

Пример 2

Сначала позволяет, задают график без затрат ребра:

G1 := Graph::createCompleteGraph(3):
Graph::getEdgeCosts(G1)

FAIL был возвращен, потому что никакое ребро не стоит заданного werde.

Graph::getEdges(G1);
G2 := Graph::setEdgeCosts(G1, [[1, 2], [3, 1]], [5, 1/2]):
Graph::getEdgeCosts(G2)

Первый выход показывает все ребра (график является неориентированным!) и второй присвоенные затраты ребра. Не только заданные ребра были установлены, но также и вернувшиеся ребра.

Graph::getEdges(G1);
G2 := Graph::setEdgeCosts(G1, [[1, 2], [3, 1]], [5, 1/2], 
                          OnlySpecifiedEdges):
Graph::getEdgeCosts(G2)

Легко видеть, что только заданные затраты ребра были изменены а не вернувшиеся ребра, также.

Пример 3

Там существуйте также возможность установить затраты с помощью таблицы вместо списка.

tbl := table([1, 2] = 15, [1, 3] = 20):
G2 := Graph::createCompleteGraph(3):
G2 := Graph::setEdgeCosts(G2, [[1, 2], [3, 1]], tbl):
Graph::getEdgeCosts(G2)

И снова, но на этот раз только заданные ребра:

tbl := table([1, 2] = 15, [1, 3] = 20):
G2 := Graph::createCompleteGraph(3):
G2 := Graph::setEdgeCosts(G2, [[1, 2], [3, 1]], tbl, 
                          OnlySpecifiedEdges):
Graph::getEdgeCosts(G2)

Параметры

G

График

Edge

Список одного или нескольких ребер

EdgeCosts

Список одного или нескольких чисел или таблица, состоящая из ребер с их затратами.

Опции

OnlySpecifiedEdges

Только ребра заданы в Edge будет установлен.

Возвращаемые значения

Новый график с откорректированными затратами ребра.

Для просмотра документации необходимо авторизоваться на сайте