问题:
题目来源:力扣(LeetCode)
难度:简单
分析:
逻辑模拟。
几个小技巧:
1、list是顺序查找,set是哈希查找,所以set会很快。set实际上是一个没有value的字典,因此set的值要求唯一并且是不可变类型。
2、逻辑模拟按照逻辑走就可以,找好状态以及状态转换方式。状态空间的寻找很重要。
本题中有4个状态,分别面向上、下、左、右,对应4个操作,x方向前进,y方向前进,左转、右转。每个状态对应的操作结果不同,因此每次需要根据前置状态做出判断,提前写个字典对应好各操作带来的变化。
解决方法:
1:逻辑模拟
#逻辑模拟
#set是哈希查找,list是顺序查找,所以存成set比较快
#不要直接用dir,python有自己的dir函数,虽然用了也不会出错。
class Solution:
def robotSim(self, commands: List[int], obstacles: List[List[int]]