2012年5月13日

农夫过河问题-队列的应用

摘要: 要模拟农夫过河问题,首先需要选择一个对问题中每个角色的位置进行描述的方法。一个很方便的办法是用四位二进制数顺序分别表示农夫,狼,白菜,和羊的位置。例如,用0表示农夫或者弄东西在河的南岸,1表示在河的北岸。因此,整数5(其二进制表示为1001)表示农夫和白菜在河的南岸,而狼和羊在北岸。这时农夫不在,因此狼可以把羊吃掉,所以是一种不安全的状态。问题的初始状态是整数0,;而问题的终结状态是整数15.用整数location表示上述方法描述的状态,可以用下面的四个函数从上述状态中得到每个觉得所在的位置的代码。函数返回值为1表示所考察的人或物在河的北岸,否则在河的南岸。队列的初始化:#include &q 阅读全文

posted @ 2012-05-13 10:10 yucong 阅读(3437) 评论(0) 推荐(0)

导航