Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change loom.alg-generic/pre-traverse to do much less work #120

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

jafingerhut
Copy link

especially if the graph is dense with edges for a node that is
traversed, but the returned lazy sequence is not ever evaluated to get
to those nodes.

Also eliminate a stack-growing recursive call, using recur instead.
The previous version could grow the call stack nearly as deep as the
number of edges in the graph.

especially if the graph is dense with edges for a node that is
traversed, but the returned lazy sequence is not ever evaluated to get
to those nodes.

Also eliminate a stack-growing recursive call, using recur instead.
The previous version could grow the call stack nearly as deep as the
number of edges in the graph.
@jafingerhut
Copy link
Author

I was using pre-traverse to do a partial DFS of some large graphs where some nodes had very high degree, and found that it was doing a lot of unnecessary work for edges in the graph that were never 'crossed' by my partial DFS.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant