回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我对python和这个论坛非常陌生:)
我一直在努力用字典,真的需要一些帮助。你知道吗</p>
<p>对于我的问题,输入是:</p>
<pre><code>frontier = [
{ 'state': (2, 5, 4, 3, 0, 1), 'path': [ 'PULL' ] },
{ 'state': (2, 4, 5, 0, 3, 1), 'path': [ 'SWAP','PULL' ] },
{ 'state': (2, 5, 4, 0, 1, 3), 'path': [ 'SWAP' ] },
{ 'state': (2, 0, 5, 4, 3, 1), 'path': [ 'PUSH', 'PUSH' ] },
]
</code></pre>
<p>我们被告知每个动作的赋值:</p>
<ul>
<li>推送:5</li>
<li>拉力:6</li>
<li>交换:8</li>
<li><p>翻转:2</p>
<p>例如,如果[push,swap]=5+8</p></li>
</ul>
<p>对于这个问题,每个状态都有一个我计算的赋值(启发式)。你知道吗</p>
<p>然而,计算行动的价值让我感到困惑。我尝试过通过拆分项['path']进行编码,但它创建的列表无法使用。<em>我不知道该怎么做。</em></p>
<p>我想列一个行动的清单。对于上述问题,它将看起来:</p>
<pre><code>[6, 14, 8, 10]
</code></pre>
<p>有人能告诉我如何通过对给定示例的解释和代码来实现它吗?你知道吗</p>