A good book to learn graph algorithms
$begingroup$
Can someone please tell a good reference to study algorithms in graph theory?
I've studied sufficient graph theory in discrete mathematics and data structures courses, which included topics like colouring, matching, planarity, BFS, DFS and Dijkstra's algorithm. But I'm unable to solve coding questions at all on competitive coding sites like codechef.
So, can someone please tell me a good book OR video tutorials online for the same? Thanks!
graph-theory reference-request book-recommendation online-resources
$endgroup$
add a comment |
$begingroup$
Can someone please tell a good reference to study algorithms in graph theory?
I've studied sufficient graph theory in discrete mathematics and data structures courses, which included topics like colouring, matching, planarity, BFS, DFS and Dijkstra's algorithm. But I'm unable to solve coding questions at all on competitive coding sites like codechef.
So, can someone please tell me a good book OR video tutorials online for the same? Thanks!
graph-theory reference-request book-recommendation online-resources
$endgroup$
1
$begingroup$
Check out "The Art of Computer Programming" by Donald E. Knuth or "The Stanford GraphBase: A Platform for Combinatorial Computing" by Donald E. Knuth
$endgroup$
– Moritz
Dec 28 '18 at 12:09
$begingroup$
@Moritz Sure. Thanks a lot :)
$endgroup$
– Ankit Kumar
Dec 28 '18 at 13:11
$begingroup$
Take a look at Skiena's "The Algorithm Design Manual", Springer, 2008.
$endgroup$
– Jean Marie
Dec 30 '18 at 21:24
$begingroup$
duplicate of math.stackexchange.com/q/27480
$endgroup$
– Jean Marie
Dec 31 '18 at 22:24
add a comment |
$begingroup$
Can someone please tell a good reference to study algorithms in graph theory?
I've studied sufficient graph theory in discrete mathematics and data structures courses, which included topics like colouring, matching, planarity, BFS, DFS and Dijkstra's algorithm. But I'm unable to solve coding questions at all on competitive coding sites like codechef.
So, can someone please tell me a good book OR video tutorials online for the same? Thanks!
graph-theory reference-request book-recommendation online-resources
$endgroup$
Can someone please tell a good reference to study algorithms in graph theory?
I've studied sufficient graph theory in discrete mathematics and data structures courses, which included topics like colouring, matching, planarity, BFS, DFS and Dijkstra's algorithm. But I'm unable to solve coding questions at all on competitive coding sites like codechef.
So, can someone please tell me a good book OR video tutorials online for the same? Thanks!
graph-theory reference-request book-recommendation online-resources
graph-theory reference-request book-recommendation online-resources
edited Dec 30 '18 at 20:07
Jyrki Lahtonen
110k13171386
110k13171386
asked Dec 28 '18 at 6:58
Ankit KumarAnkit Kumar
1,516221
1,516221
1
$begingroup$
Check out "The Art of Computer Programming" by Donald E. Knuth or "The Stanford GraphBase: A Platform for Combinatorial Computing" by Donald E. Knuth
$endgroup$
– Moritz
Dec 28 '18 at 12:09
$begingroup$
@Moritz Sure. Thanks a lot :)
$endgroup$
– Ankit Kumar
Dec 28 '18 at 13:11
$begingroup$
Take a look at Skiena's "The Algorithm Design Manual", Springer, 2008.
$endgroup$
– Jean Marie
Dec 30 '18 at 21:24
$begingroup$
duplicate of math.stackexchange.com/q/27480
$endgroup$
– Jean Marie
Dec 31 '18 at 22:24
add a comment |
1
$begingroup$
Check out "The Art of Computer Programming" by Donald E. Knuth or "The Stanford GraphBase: A Platform for Combinatorial Computing" by Donald E. Knuth
$endgroup$
– Moritz
Dec 28 '18 at 12:09
$begingroup$
@Moritz Sure. Thanks a lot :)
$endgroup$
– Ankit Kumar
Dec 28 '18 at 13:11
$begingroup$
Take a look at Skiena's "The Algorithm Design Manual", Springer, 2008.
$endgroup$
– Jean Marie
Dec 30 '18 at 21:24
$begingroup$
duplicate of math.stackexchange.com/q/27480
$endgroup$
– Jean Marie
Dec 31 '18 at 22:24
1
1
$begingroup$
Check out "The Art of Computer Programming" by Donald E. Knuth or "The Stanford GraphBase: A Platform for Combinatorial Computing" by Donald E. Knuth
$endgroup$
– Moritz
Dec 28 '18 at 12:09
$begingroup$
Check out "The Art of Computer Programming" by Donald E. Knuth or "The Stanford GraphBase: A Platform for Combinatorial Computing" by Donald E. Knuth
$endgroup$
– Moritz
Dec 28 '18 at 12:09
$begingroup$
@Moritz Sure. Thanks a lot :)
$endgroup$
– Ankit Kumar
Dec 28 '18 at 13:11
$begingroup$
@Moritz Sure. Thanks a lot :)
$endgroup$
– Ankit Kumar
Dec 28 '18 at 13:11
$begingroup$
Take a look at Skiena's "The Algorithm Design Manual", Springer, 2008.
$endgroup$
– Jean Marie
Dec 30 '18 at 21:24
$begingroup$
Take a look at Skiena's "The Algorithm Design Manual", Springer, 2008.
$endgroup$
– Jean Marie
Dec 30 '18 at 21:24
$begingroup$
duplicate of math.stackexchange.com/q/27480
$endgroup$
– Jean Marie
Dec 31 '18 at 22:24
$begingroup$
duplicate of math.stackexchange.com/q/27480
$endgroup$
– Jean Marie
Dec 31 '18 at 22:24
add a comment |
1 Answer
1
active
oldest
votes
$begingroup$
If you want to build a very broad knowledge for modern algorithms in general
I would propose
- Learn beginners linear algebra.
- Learn a heck lot of more linear algebra.
- Learn some spectral clustering.
Now you will be able to do lots of graph stuff. And probably also derive your own Dijkstra like algorithms implicitly by solving big linear equation systems.
$endgroup$
1
$begingroup$
The Question asks for book recommendations for algorithms in graph theory. Given the claimed familiarity with some,of these algorithms, a response that has no book recommendations and only a tenuous connection to graph theory is misplaced.
$endgroup$
– hardmath
Dec 30 '18 at 21:40
$begingroup$
If you just wanted it as a poster for Knuth you could have said so in a comment.
$endgroup$
– mathreadler
Dec 30 '18 at 21:43
$begingroup$
"your own Dijkstra like algorithms implicitly by solving big linear equation systems" : what has Dikstra's algorithm to do with solving a system of equations ?
$endgroup$
– Jean Marie
Dec 31 '18 at 19:24
$begingroup$
@JeanMarie the problem to be solved (finding fastest path from one place to all other places): It's very solvable with linear algebra if you just get good enough at it.
$endgroup$
– mathreadler
Dec 31 '18 at 19:50
$begingroup$
But complexity of solving a linear system is so huge compared to the efficiency of Dijkstra's algorithm (as it is presented usually)...
$endgroup$
– Jean Marie
Dec 31 '18 at 20:20
|
show 1 more comment
Your Answer
StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
});
});
}, "mathjax-editing");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "69"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
noCode: true, onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f3054642%2fa-good-book-to-learn-graph-algorithms%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
If you want to build a very broad knowledge for modern algorithms in general
I would propose
- Learn beginners linear algebra.
- Learn a heck lot of more linear algebra.
- Learn some spectral clustering.
Now you will be able to do lots of graph stuff. And probably also derive your own Dijkstra like algorithms implicitly by solving big linear equation systems.
$endgroup$
1
$begingroup$
The Question asks for book recommendations for algorithms in graph theory. Given the claimed familiarity with some,of these algorithms, a response that has no book recommendations and only a tenuous connection to graph theory is misplaced.
$endgroup$
– hardmath
Dec 30 '18 at 21:40
$begingroup$
If you just wanted it as a poster for Knuth you could have said so in a comment.
$endgroup$
– mathreadler
Dec 30 '18 at 21:43
$begingroup$
"your own Dijkstra like algorithms implicitly by solving big linear equation systems" : what has Dikstra's algorithm to do with solving a system of equations ?
$endgroup$
– Jean Marie
Dec 31 '18 at 19:24
$begingroup$
@JeanMarie the problem to be solved (finding fastest path from one place to all other places): It's very solvable with linear algebra if you just get good enough at it.
$endgroup$
– mathreadler
Dec 31 '18 at 19:50
$begingroup$
But complexity of solving a linear system is so huge compared to the efficiency of Dijkstra's algorithm (as it is presented usually)...
$endgroup$
– Jean Marie
Dec 31 '18 at 20:20
|
show 1 more comment
$begingroup$
If you want to build a very broad knowledge for modern algorithms in general
I would propose
- Learn beginners linear algebra.
- Learn a heck lot of more linear algebra.
- Learn some spectral clustering.
Now you will be able to do lots of graph stuff. And probably also derive your own Dijkstra like algorithms implicitly by solving big linear equation systems.
$endgroup$
1
$begingroup$
The Question asks for book recommendations for algorithms in graph theory. Given the claimed familiarity with some,of these algorithms, a response that has no book recommendations and only a tenuous connection to graph theory is misplaced.
$endgroup$
– hardmath
Dec 30 '18 at 21:40
$begingroup$
If you just wanted it as a poster for Knuth you could have said so in a comment.
$endgroup$
– mathreadler
Dec 30 '18 at 21:43
$begingroup$
"your own Dijkstra like algorithms implicitly by solving big linear equation systems" : what has Dikstra's algorithm to do with solving a system of equations ?
$endgroup$
– Jean Marie
Dec 31 '18 at 19:24
$begingroup$
@JeanMarie the problem to be solved (finding fastest path from one place to all other places): It's very solvable with linear algebra if you just get good enough at it.
$endgroup$
– mathreadler
Dec 31 '18 at 19:50
$begingroup$
But complexity of solving a linear system is so huge compared to the efficiency of Dijkstra's algorithm (as it is presented usually)...
$endgroup$
– Jean Marie
Dec 31 '18 at 20:20
|
show 1 more comment
$begingroup$
If you want to build a very broad knowledge for modern algorithms in general
I would propose
- Learn beginners linear algebra.
- Learn a heck lot of more linear algebra.
- Learn some spectral clustering.
Now you will be able to do lots of graph stuff. And probably also derive your own Dijkstra like algorithms implicitly by solving big linear equation systems.
$endgroup$
If you want to build a very broad knowledge for modern algorithms in general
I would propose
- Learn beginners linear algebra.
- Learn a heck lot of more linear algebra.
- Learn some spectral clustering.
Now you will be able to do lots of graph stuff. And probably also derive your own Dijkstra like algorithms implicitly by solving big linear equation systems.
answered Dec 30 '18 at 21:30
mathreadlermathreadler
15.1k72263
15.1k72263
1
$begingroup$
The Question asks for book recommendations for algorithms in graph theory. Given the claimed familiarity with some,of these algorithms, a response that has no book recommendations and only a tenuous connection to graph theory is misplaced.
$endgroup$
– hardmath
Dec 30 '18 at 21:40
$begingroup$
If you just wanted it as a poster for Knuth you could have said so in a comment.
$endgroup$
– mathreadler
Dec 30 '18 at 21:43
$begingroup$
"your own Dijkstra like algorithms implicitly by solving big linear equation systems" : what has Dikstra's algorithm to do with solving a system of equations ?
$endgroup$
– Jean Marie
Dec 31 '18 at 19:24
$begingroup$
@JeanMarie the problem to be solved (finding fastest path from one place to all other places): It's very solvable with linear algebra if you just get good enough at it.
$endgroup$
– mathreadler
Dec 31 '18 at 19:50
$begingroup$
But complexity of solving a linear system is so huge compared to the efficiency of Dijkstra's algorithm (as it is presented usually)...
$endgroup$
– Jean Marie
Dec 31 '18 at 20:20
|
show 1 more comment
1
$begingroup$
The Question asks for book recommendations for algorithms in graph theory. Given the claimed familiarity with some,of these algorithms, a response that has no book recommendations and only a tenuous connection to graph theory is misplaced.
$endgroup$
– hardmath
Dec 30 '18 at 21:40
$begingroup$
If you just wanted it as a poster for Knuth you could have said so in a comment.
$endgroup$
– mathreadler
Dec 30 '18 at 21:43
$begingroup$
"your own Dijkstra like algorithms implicitly by solving big linear equation systems" : what has Dikstra's algorithm to do with solving a system of equations ?
$endgroup$
– Jean Marie
Dec 31 '18 at 19:24
$begingroup$
@JeanMarie the problem to be solved (finding fastest path from one place to all other places): It's very solvable with linear algebra if you just get good enough at it.
$endgroup$
– mathreadler
Dec 31 '18 at 19:50
$begingroup$
But complexity of solving a linear system is so huge compared to the efficiency of Dijkstra's algorithm (as it is presented usually)...
$endgroup$
– Jean Marie
Dec 31 '18 at 20:20
1
1
$begingroup$
The Question asks for book recommendations for algorithms in graph theory. Given the claimed familiarity with some,of these algorithms, a response that has no book recommendations and only a tenuous connection to graph theory is misplaced.
$endgroup$
– hardmath
Dec 30 '18 at 21:40
$begingroup$
The Question asks for book recommendations for algorithms in graph theory. Given the claimed familiarity with some,of these algorithms, a response that has no book recommendations and only a tenuous connection to graph theory is misplaced.
$endgroup$
– hardmath
Dec 30 '18 at 21:40
$begingroup$
If you just wanted it as a poster for Knuth you could have said so in a comment.
$endgroup$
– mathreadler
Dec 30 '18 at 21:43
$begingroup$
If you just wanted it as a poster for Knuth you could have said so in a comment.
$endgroup$
– mathreadler
Dec 30 '18 at 21:43
$begingroup$
"your own Dijkstra like algorithms implicitly by solving big linear equation systems" : what has Dikstra's algorithm to do with solving a system of equations ?
$endgroup$
– Jean Marie
Dec 31 '18 at 19:24
$begingroup$
"your own Dijkstra like algorithms implicitly by solving big linear equation systems" : what has Dikstra's algorithm to do with solving a system of equations ?
$endgroup$
– Jean Marie
Dec 31 '18 at 19:24
$begingroup$
@JeanMarie the problem to be solved (finding fastest path from one place to all other places): It's very solvable with linear algebra if you just get good enough at it.
$endgroup$
– mathreadler
Dec 31 '18 at 19:50
$begingroup$
@JeanMarie the problem to be solved (finding fastest path from one place to all other places): It's very solvable with linear algebra if you just get good enough at it.
$endgroup$
– mathreadler
Dec 31 '18 at 19:50
$begingroup$
But complexity of solving a linear system is so huge compared to the efficiency of Dijkstra's algorithm (as it is presented usually)...
$endgroup$
– Jean Marie
Dec 31 '18 at 20:20
$begingroup$
But complexity of solving a linear system is so huge compared to the efficiency of Dijkstra's algorithm (as it is presented usually)...
$endgroup$
– Jean Marie
Dec 31 '18 at 20:20
|
show 1 more comment
Thanks for contributing an answer to Mathematics Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f3054642%2fa-good-book-to-learn-graph-algorithms%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
$begingroup$
Check out "The Art of Computer Programming" by Donald E. Knuth or "The Stanford GraphBase: A Platform for Combinatorial Computing" by Donald E. Knuth
$endgroup$
– Moritz
Dec 28 '18 at 12:09
$begingroup$
@Moritz Sure. Thanks a lot :)
$endgroup$
– Ankit Kumar
Dec 28 '18 at 13:11
$begingroup$
Take a look at Skiena's "The Algorithm Design Manual", Springer, 2008.
$endgroup$
– Jean Marie
Dec 30 '18 at 21:24
$begingroup$
duplicate of math.stackexchange.com/q/27480
$endgroup$
– Jean Marie
Dec 31 '18 at 22:24