<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>traversla Archives - Huahua&#039;s Tech Road</title>
	<atom:link href="https://zxi.mytechroad.com/blog/tag/traversla/feed/" rel="self" type="application/rss+xml" />
	<link>https://zxi.mytechroad.com/blog/tag/traversla/</link>
	<description></description>
	<lastBuildDate>Fri, 13 Jul 2018 06:36:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.0.8</generator>

<image>
	<url>https://zxi.mytechroad.com/blog/wp-content/uploads/2017/09/cropped-photo-32x32.jpg</url>
	<title>traversla Archives - Huahua&#039;s Tech Road</title>
	<link>https://zxi.mytechroad.com/blog/tag/traversla/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>花花酱 LeetCode 589. N-ary Tree Preorder Traversal</title>
		<link>https://zxi.mytechroad.com/blog/tree/leetcode-589-n-ary-tree-preorder-traversal/</link>
					<comments>https://zxi.mytechroad.com/blog/tree/leetcode-589-n-ary-tree-preorder-traversal/#respond</comments>
		
		<dc:creator><![CDATA[zxi]]></dc:creator>
		<pubDate>Fri, 13 Jul 2018 06:15:15 +0000</pubDate>
				<category><![CDATA[Tree]]></category>
		<category><![CDATA[n-ary]]></category>
		<category><![CDATA[preorder]]></category>
		<category><![CDATA[traversla]]></category>
		<category><![CDATA[tree]]></category>
		<guid isPermaLink="false">http://zxi.mytechroad.com/blog/?p=3108</guid>

					<description><![CDATA[<p>Problem Given an n-ary tree, return the preorder traversal of its nodes&#8217; values. &#160; For example, given a 3-ary tree: &#160; Return its preorder traversal as: [1,3,5,6,2,4]. &#160; Note: Recursive solution&#8230;</p>
<p>The post <a rel="nofollow" href="https://zxi.mytechroad.com/blog/tree/leetcode-589-n-ary-tree-preorder-traversal/">花花酱 LeetCode 589. N-ary Tree Preorder Traversal</a> appeared first on <a rel="nofollow" href="https://zxi.mytechroad.com/blog">Huahua&#039;s Tech Road</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h1><strong>Problem</strong></h1>
<p>Given an n-ary tree, return the <i>preorder</i> traversal of its nodes&#8217; values.</p>
<p>&nbsp;</p>
<p>For example, given a <code>3-ary</code> tree:</p>
<p><img src="https://leetcode.com/static/images/problemset/NaryTreeExample.png" width="40%" height="40%" /></p>
<p>&nbsp;</p>
<p>Return its preorder traversal as: <code>[1,3,5,6,2,4]</code>.</p>
<p>&nbsp;</p>
<p><b>Note:</b> Recursive solution is trivial, could you do it iteratively?</p>
<h1><strong>Solution1: Recursive</strong></h1>
<p></p><pre class="crayon-plain-tag">// Author: Huahua
// Running time: 48 ms
class Solution {
public:
  vector&lt;int&gt; preorder(Node* root) {
    vector&lt;int&gt; ans;
    preorder(root, ans);
    return ans;
  }
private:
  void preorder(Node* root, vector&lt;int&gt;&amp; ans) {
    if (!root) return;
    ans.push_back(root-&gt;val);
    for (const auto&amp; child : root-&gt;children)
      preorder(child, ans);
  }
};</pre><p></p>
<h1><strong>Solution2: Iterative</strong></h1>
<p></p><pre class="crayon-plain-tag">// Author: Huahua
// Running time: 52 ms
class Solution {
public:
  vector&lt;int&gt; preorder(Node* root) {
    if (!root) return {};
    vector&lt;int&gt; ans;
    stack&lt;Node*&gt; s;
    s.push(root);
    while (!s.empty()) {
      const Node* node = s.top(); s.pop();
      ans.push_back(node-&gt;val);
      for (auto it = node-&gt;children.rbegin(); it != node-&gt;children.rend(); ++it)
        s.push(*it);
    }
    return ans;
  }
};</pre><p></p>
<h1><strong>Related Problems</strong></h1>
<ul>
<li><a href="http://zxi.mytechroad.com/blog/tree/leetcode-590-n-ary-tree-postorder-traversal/">花花酱 LeetCode 590. N-ary Tree Postorder Traversal</a></li>
<li><a href="http://zxi.mytechroad.com/blog/tree/leetcode-331-verify-preorder-serialization-of-a-binary-tree/">花花酱 LeetCode 331. Verify Preorder Serialization of a Binary Tree</a></li>
</ul>
<p>The post <a rel="nofollow" href="https://zxi.mytechroad.com/blog/tree/leetcode-589-n-ary-tree-preorder-traversal/">花花酱 LeetCode 589. N-ary Tree Preorder Traversal</a> appeared first on <a rel="nofollow" href="https://zxi.mytechroad.com/blog">Huahua&#039;s Tech Road</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://zxi.mytechroad.com/blog/tree/leetcode-589-n-ary-tree-preorder-traversal/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
