scispace - formally typeset
Open AccessJournal ArticleDOI

A note on two problems in connexion with graphs

Edsger W. Dijkstra
- 01 Dec 1959 - 
- Vol. 1, Iss: 1, pp 269-271
Reads0
Chats0
TLDR
A tree is a graph with one and only one path between every two nodes, where at least one path exists between any two nodes and the length of each branch is given.
Abstract
We consider n points (nodes), some or all pairs of which are connected by a branch; the length of each branch is given. We restrict ourselves to the case where at least one path exists between any two nodes. We now consider two problems. Problem 1. Constrnct the tree of minimum total length between the n nodes. (A tree is a graph with one and only one path between every two nodes.) In the course of the construction that we present here, the branches are subdivided into three sets: I. the branches definitely assignec~ to the tree under construction (they will form a subtree) ; II. the branches from which the next branch to be added to set I, will be selected ; III. the remaining branches (rejected or not yet considered). The nodes are subdivided into two sets: A. the nodes connected by the branches of set I, B. the remaining nodes (one and only one branch of set II will lead to each of these nodes), We start the construction by choosing an arbitrary node as the only member of set A, and by placing all branches that end in this node in set II. To start with, set I is empty. From then onwards we perform the following two steps repeatedly. Step 1. The shortest branch of set II is removed from this set and added to

read more

Content maybe subject to copyright    Report

Numerische
Mathematlk
l, 269
-
27 I
(l
959)
A Note on
Two
Problems
in
Connexion
with Graphs
by
E. W. DrrKsrRA
We
consider a
points (nodes),
some or all
pairs of
which are connected by a
branch;
the
length
of each branch
is
given.
We
restrict ourselves to the case
where
at least
one
path
exists
between any two
nodes.
We now
consider two
problems.
Problem 1. Construct the tree of minimum total
length
between the n nodes.
(A
tree is
a
graph
with one and only one
path between
every two nodes.)
In
the
course
ol the construction
that we
present here, the branches
are
subdivided
into three
sets:
I. the branches definitely assigned
to the tree
under construction
(they will
form a
subtree)
;
IL the branches
from which the next branch
to be added to set
I, will be
selected;
III. the rernaining branches
(rejected
or
not
yet considered)'
The nodes are subdivided
into two sets:
A. the nodes connected by the branches of set
I,
B. the remaining nodes
(one and only one branch
of set
II will lead to each
of these
nodes).
We
stalt
the construction by choosing
an arbitrary
node
as the only member
of set A, and by
placing
all branches
that
end
in
this node
in set II.
To
start
with, set I is empty.
From
then
onwalals we
Pedorm
the
following
two steps
repeatedly.
Step 1. The shortest branch of set
II is removed
from
this set and added to
set I. As a result one node
is transferred from set
B to set
I .
Slep 2.
Consider the branches
leading
from the
node, that
has
just
been
trans-
ferred
to set
A, to
the
nodes that are still in
set
B. If
the branch under
con-
sideration is longer
than
the corresponding
branch
in set
II, it
is rejected; it it
is shorter, it replaces the corresponding
branch in set
II,
and the
latter is rejected.
We then return to step I and
repeat the
process until
sets
II and B are empty.
The
branches in set I form the
tree required,
The
solution
given
here is to be
prelerred to
the solution
given
by
J.
B.
Knusxar
[1]
and
those
given
by
H. LoBERMAN
and
A. WrrNgancER
[2].
In
their
solutions all the
possibly
]z(z-l)
-
branches
are
first of all sorted
according
to
length. Even if the length
of the branches
is a computable
function
of the
node coordinates, their
methods
demand that
data
for al1 branches are
stored
simultaneously. Our
method only
requires
the simultaneous
storing
of
Nuoer.
Math. Bd. I
i9

270 E.
.w.
DTJKSTRA:
the data for at most r
branches, viz. the branches in
sets
I
and II and
the bmnch
under consideration
in step
2.
Problem 2. Find
the
path
of rninimum total lengtl
between two
given
nodes
P and
Q.
We use the fact that, if R
is
a
node on the minimal
path
from P
to
Q,
knowledge
of
the
latter
implies the knowledge of
the minimal
path
from P
to Ä. In the
solution
presented,
the minimal
paths
from P
to the other nodes are
constructed
in order of increasing
length until
Q
is reached.
Iu
the cou$e of the solution the nodes
are subdivided into three
sets:
A. the nodes for wbLich
the
path
o{ nrinimum lengti
from P is known; nodes
will be added to this
set
in
order of increasing minimum path
length from node P;
B. the nodes from which
the
next
node to be added to set A will
be selected;
this set
comprises
all those nodes that are connected
to at least one node
of
set A but do not yet
belong to A themselves;
C. the remaining nodes.
The
branches are also subdivided into three
sets:
L
the
branches
occurring in the minimal
paths
ftom
node P to the
lodes
in set A;
IL
the branches from which
the oext brancl to be
placed
in
set I will
be
selected;
one
and only one branch of this
set
will
lead to each node in
set B;
III. the remaining branches (rejected
or not
yet
considered).
To start with, all nodes
are iu set C and all branches are in
set
IIL
We now
transfer node P to set A and from then onwards
repeatedly
perform
the following
steps.
Slep
7.
Consider all branches z connecting
the node
just
transfeired
to set A
with nodes R in
sets B or C. If node R
belongs to set B, we investigate whether
the use of branch z
gives
rise
to a shorter
path
Jrom P
to
R
than the known
path
that uses the corresponding
branch in set II. If this is not
so, branch r is
rejected;
if,
however, use of branch z resu.lts
in a shorter connexion
between P
and .R than hitherto
obtaiaed, it replaces
the corresponding branch in
set II
and the Latter is rejected. If
the node.R belongs to
set C, it is added to
set
B
and
branch
r
is added to set II.
SleP 2. Elery
node in set B can be
connected to node P in only
one way
if
we
restrict ourselves to branches
from set I and one from
set
II.
In this
sense
each
node in
set
B
has a distance from
node
P:
the node with minimum
distance
from P is transferred
from set B to
set
A, and the
corresponding branch
is trans-
ferred from set II to
set I. We then retum to step
I and repeat the process
until node
Q
is transferred
to set A. Then the
solution has been found.
Remark 1. The above process
can also
be applied in the case where the
length
of a branch depends on
the direction in which it
is traversed.
Remark
2.
For
each branch in
sets
I
and
II
it
is
advisable to lecord
its two
nodes
(in
order
of increasing
distance from P),
and the distance between P and
that node
of the branch
that is furthest from P. For
the branches of set I
this

Two
Pioblems
in
Con[exion
with GraDhs
)71
is the
actual
minimum
distance,
for
the branches
of set
II it is
onlv
the minimum
thus far
obtained.
The
solution
given
above is
to be preferred
to
the
solution by
L. R. FoRD
[A]
as
dcscribed
by C. Brncn
[4j,
for,
irrespective
of
the number
of
branches,
wJ
need
not
store
the data
for
all branches
simultaneouü
but
only those
for
the
branches
in sets
I and
II, and
this number
is
alwa5n less
than
n, Furthermore,
the amount
of work
to
be done
seems
to be considerably
less.
t2l
t3l
t4l
References
KRUSRAL
ji.,
J.
B.:
On the
Shortest
Spanning
Subtree
of a
Graph
aod the
-
Travelling
Salesman
Problem.
proc.
Lmer. Math.
Soc.
j,
48_S; (956).
Loaenu,r.x,
H.,
and A.
WETNaERGER:
Formal
procedures
ior
Co"nJciiog
fer-
minals
with
a Minimum
Total
Wire
Length.
J.
Ass.
Comp. Macb.
4,
42d_q7
(r9s7).
foRD,
T1
R::_
l.{etwgrk
flow theory.
Rand
Corp.
paper,
p-923,
t
956.
5ERGE,
U. :
I
heorie
des
graphes
et ses applications,
pp.
6g
_
69.
paris:
Dunod
t
95g.
Mattreoatisch
Centlum
2e
Boerhaavestraat
49
Amsterdam-O
(Recefued,
June
11, 1959)
19.
Citations
More filters
Journal ArticleDOI

Cortical surface-based analysis. I. Segmentation and surface reconstruction

TL;DR: A set of automated procedures for obtaining accurate reconstructions of the cortical surface are described, which have been applied to data from more than 100 subjects, requiring little or no manual intervention.
Book

The Design and Analysis of Computer Algorithms

TL;DR: This text introduces the basic data structures and programming techniques often used in efficient algorithms, and covers use of lists, push-down stacks, queues, trees, and graphs.

The igraph software package for complex network research

TL;DR: Platform-independent and open source igraph aims to satisfy all the requirements of a graph package while possibly remaining easy to use in interactive mode as well.
Book

Graph theory with applications

J. A. Bondy
TL;DR: In this paper, the authors present Graph Theory with Applications: Graph theory with applications, a collection of applications of graph theory in the field of Operational Research and Management. Journal of the Operational research Society: Vol. 28, Volume 28, issue 1, pp. 237-238.
MonographDOI

Planning Algorithms: Introductory Material

TL;DR: This coherent and comprehensive book unifies material from several sources, including robotics, control theory, artificial intelligence, and algorithms, into planning under differential constraints that arise when automating the motions of virtually any mechanical system.
References
More filters
Journal ArticleDOI

On the shortest spanning subtree of a graph and the traveling salesman problem

TL;DR: Kurosh and Levitzki as discussed by the authors, on the radical of a general ring and three problems concerning nil rings, Bull Amer Math Soc vol 49 (1943) pp 913-919 10 -, On the structure of algebraic algebras and related rings.

Network flow theory

L. R. Ford
TL;DR: The labeling algorithm for the solution of maximal network flow problems and its application to various problems of the transportation type are discussed.
Journal ArticleDOI

Formal Procedures for Connecting Terminals with a Minimum Total Wire Length

TL;DR: Two methods for systematically selecting the shortest connections from a list of possible connections to obtain a minimum total wire length are presented, which will be called a minimum tree.
Frequently Asked Questions (1)
Q1. What have the authors contributed in "A note on two problems in connexion with graphs" ?

In the course ol the construction that the authors present here, the branches are subdivided into three sets: I. the branches definitely assigned to the tree under construction ( they will form a subtree ) ; IL the branches from which the next branch to be added to set I, will be selected ; III. From then onwalals the authors Pedorm the following two steps repeatedly.