算法题(3)

简介: 算法题(3)

题目

在二维平面上,有一个机器人从原点 (0, 0) 开始。给出它的移动顺序,判断这个机器人在完成移动后是否在 (0, 0) 处结束。
移动顺序由字符串 moves 表示。字符 move[i] 表示其第 i 次移动。机器人的有效动作有 R(右),L(左),U(上)和 D(下)。
如果机器人在完成所有动作后返回原点,则返回 true。否则,返回 false。
注意:机器人“面朝”的方向无关紧要。 “R” 将始终使机器人向右移动一次,“L” 将始终向左移动等。此外,假设每次移动机器人的移动幅度相同。
链接:https://leetcode.cn/problems/robot-return-to-origin

解题

function(moves) {
   
    let count = {
   U:0,D:0,L:0,R:0};
    for(let i=0;i<moves.length;i++){
   
        count[moves[i]]++;
    }
    return count.U === count.D && count.L === count.R;

};

解析

其实这道题就是统计向四个方向移动的次数,如果上和下次数相等,左和右次数相等,那么机器人就能回到原点。

相关文章
|
1月前
|
存储 算法 C++
【算法】粘木棍问题(C/C++)
【算法】粘木棍问题(C/C++)
|
2月前
|
算法
算法题(6)
算法题(6)
26 7
|
2月前
|
算法
算法题(2)
算法题(2)
28 3
|
3月前
|
算法
Manacher(马拉车)算法详解
该文章详细解释了Manacher算法,这是一种高效找出给定字符串最长回文子串的算法,通过在字符串中插入特殊字符构建新的字符串,并利用中心扩展策略来找出最长回文序列,时间复杂度为O(N),空间复杂度为O(N)。
|
机器学习/深度学习 人工智能 算法
秒懂算法 | 尺取法
尺取法(又称为:双指针、two pointers),是算法竞赛中一个常用的优化技巧,用来解决序列的区间问题,操作简单、容易编程。 本篇介绍了尺取法的概念、反向扫描、同向扫描、模板、典型题目。
380 1
秒懂算法 | 尺取法
|
存储 机器学习/深度学习 人工智能
秒懂算法 | 分块算法
本篇内容包括了分块算法的思想的介绍、分块算法复杂度的分析以及相关例题。
346 0
秒懂算法 | 分块算法
|
存储 算法 搜索推荐
C#算法大全(上)
今天有人想让我搞一期C#算法大全。算法就算法,安排上!
|
算法 索引
紫书之子集生成三种算法
紫书之子集生成三种算法
紫书之子集生成三种算法
|
算法 Java 索引
插值查找算法
插值查找算法又称插值搜索算法,是在二分查找算法的基础上改进得到的一种查找算法。
280 0
|
算法
算法题:出现
题目: 给定 n 个自然数,求没有在这 n 个自然数中出现过的最小的自然数是多少。
112 0