<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Orphans project completed</title>
	<atom:link href="http://divnull.com/blog/2008/orphans-project-completed/feed/" rel="self" type="application/rss+xml" />
	<link>http://divnull.com/blog/2008/orphans-project-completed/</link>
	<description>Undefinable.</description>
	<lastBuildDate>Tue, 10 Apr 2012 00:14:59 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
	<item>
		<title>By: wordman</title>
		<link>http://divnull.com/blog/2008/orphans-project-completed/comment-page-1/#comment-43</link>
		<dc:creator>wordman</dc:creator>
		<pubDate>Tue, 28 Oct 2008 01:11:27 +0000</pubDate>
		<guid isPermaLink="false">http://divnull.com/blog/?p=115#comment-43</guid>
		<description>@Alec: Depth first doesn&#039;t actually work, because the data here is a network, not a tree. That is, going &quot;down&quot; can easily cycle you back to where you started. It would be possible to do a modified &quot;depth first-like&quot; search that, for example, ignored nodes already visited. If you also added the path length constraint used in this project (i.e. no path greater than five links) you would also be able terminate paths (which you basically have to do, since in a network of links like a wiki, any given page can ultimately lead to pretty much all the other pages eventually). Doing this, you could build a list of everything you found, then compare that to a list of all nodes to get the orphans. I doubt this would be much faster than Dijkstra&#039;s, which does one long calculation on a base node, then can thereafter provide the shortest path from the base to any other node in constant time.

It also would have required custom coding. Since I already had the graph set up using the Graph.pm module, it was less effort just to use what the tool already provided.</description>
		<content:encoded><![CDATA[<p>@Alec: Depth first doesn&#8217;t actually work, because the data here is a network, not a tree. That is, going &#8220;down&#8221; can easily cycle you back to where you started. It would be possible to do a modified &#8220;depth first-like&#8221; search that, for example, ignored nodes already visited. If you also added the path length constraint used in this project (i.e. no path greater than five links) you would also be able terminate paths (which you basically have to do, since in a network of links like a wiki, any given page can ultimately lead to pretty much all the other pages eventually). Doing this, you could build a list of everything you found, then compare that to a list of all nodes to get the orphans. I doubt this would be much faster than Dijkstra&#8217;s, which does one long calculation on a base node, then can thereafter provide the shortest path from the base to any other node in constant time.</p>
<p>It also would have required custom coding. Since I already had the graph set up using the Graph.pm module, it was less effort just to use what the tool already provided.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alec</title>
		<link>http://divnull.com/blog/2008/orphans-project-completed/comment-page-1/#comment-38</link>
		<dc:creator>Alec</dc:creator>
		<pubDate>Fri, 19 Sep 2008 03:33:47 +0000</pubDate>
		<guid isPermaLink="false">http://divnull.com/blog/?p=115#comment-38</guid>
		<description>I&#039;m not sure why you need a shortest path algorithm to find orphans.  Wouldn&#039;t a depth-first search find anything reachable from the root page faster than Dijkstra&#039;s?</description>
		<content:encoded><![CDATA[<p>I&#8217;m not sure why you need a shortest path algorithm to find orphans.  Wouldn&#8217;t a depth-first search find anything reachable from the root page faster than Dijkstra&#8217;s?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

