首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于追溯步骤历史的算法的建议?

关于追溯步骤历史的算法的建议?
EN

Stack Overflow用户
提问于 2015-12-05 02:30:44
回答 2查看 214关注 0票数 1
  1. 有人能建议一个好的数据结构来在Java模拟中存储单个昆虫所采取的步骤历史吗?

我正在编写一个算法来搜索网格中的一个项目。昆虫从A点移动到找到它要寻找的东西(点B)。昆虫现在需要从B点返回到A点,追踪它的步骤。

  1. 有人能提出一个办法来完成这个任务吗?

我有大约6个月的Java/编程经验,我正在从事一个类项目,所以我很感激我能得到的任何建议或指导。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-12-05 02:43:16

您需要的数据结构称为堆栈,它实现了LIFO (先入先出)原则.java中有一个堆栈类。

一些附加信息:Stack的方法是同步的,这会增加一些性能开销,而在软件开发中,通常会选择LinkedList。无论如何,考虑到这是一个类赋值--选择您喜欢的任何实现。

票数 1
EN

Stack Overflow用户

发布于 2015-12-05 02:40:38

为此,您可以使用一个简单的ArrayList

如果xy在任何情况下都是坐标.

从A点到B点:

代码语言:javascript
复制
#loop till insect reaches point B{
    String coords = x + "," + y;
    someArrayList.add(coords);
    #insect move;
}

回到A点:

代码语言:javascript
复制
for(int i =0; i < someArrayList.size(); i++)
    String x = someArrayList.get(i);
    String[] y = x.split(","); // To separate x and y coordinates from string
    #insect move to coordinate (y[0], y[1]);

希望这有助于提示(因为我不知道你用什么方法让你的昆虫移动和其他细节)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34100581

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档