当前位置:网站首页>leetcode之判断路径是否相交
leetcode之判断路径是否相交
2020-11-07 21:43:00 【go4it】
序
本文主要记录一下leetcode之判断路径是否相交
题目
给你一个字符串 path,其中 path[i] 的值可以是 'N'、'S'、'E' 或者 'W',分别表示向北、向南、向东、向西移动一个单位。
机器人从二维平面上的原点 (0, 0) 处开始出发,按 path 所指示的路径行走。
如果路径在任何位置上出现相交的情况,也就是走到之前已经走过的位置,请返回 True ;否则,返回 False 。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/path-crossing
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
题解
class Solution {
public boolean isPathCrossing(String path) {
int x = 0;
int y = 0;
Set<String> pathSet = new HashSet<String>();
pathSet.add("00");
for (char c : path.toCharArray()) {
if (c == 'N') {
y++;
} else if (c == 'S') {
y--;
} else if (c == 'W') {
x--;
} else if (c == 'E') {
x++;
}
String p = String.valueOf(x) + String.valueOf(y);
if (pathSet.contains(p)) {
return true;
}
pathSet.add(p);
}
return false;
}
}
小结
这里维护走过的点,然后遍历path的字符,对x,y坐标进行相应移动,每次移动之后都判断下该点是否走过,走过则返回true,没有则将改点记录到走过的的点中,遍历完都没有符合条件就返回false。
doc
版权声明
本文为[go4it]所创,转载请带上原文链接,感谢
https://my.oschina.net/go4it/blog/4707740
边栏推荐
猜你喜欢

Code Review Best Practices

android基础-RadioButton(单选按钮)

What kind of technical ability should a programmer who has worked for 1-3 years? How to improve?

一万四千字分布式事务原理解析,全部掌握你还怕面试被问?

laravel8更新之维护模式改进

Design pattern of facade and mediator

delphi10的rest.json与system.json的踩坑

On the stock trading of leetcode

Improvement of maintenance mode of laravel8 update

获取树形菜单列表
随机推荐
use Xunit.DependencyInjection Transformation test project
easyui dialog“缓存问题”
Sentry installation
Insight -- the application of sanet in arbitrary style transfer
手撕算法-手写单例模式
一次公交卡被“盗刷”事件带来的思考
IDEA-项目未自动生成 .iml 文件
There's not much time left for Kwai Chung.
关于update操作并发问题
工作1-3年的程序员,应该具备怎么样的技术能力?该如何提升?
On the stock trading of leetcode
[original] the influence of arm platform memory and cache on the real-time performance of xenomai
DOM节点操作
Count the frequency of letters in text (case insensitive)
The prediction accuracy of the model is as high as 94%! Using machine learning to solve the 200 billion dollar inventory problem perfectly
Idea - the. IML file was not automatically generated by the project
[solution] distributed timing task solution
WPF personal summary on drawing
Web安全(一)---浏览器同源策略
Sentry 安装