
LintCode 算法 简单
LintCode 算法 简单
DXB2021
听力障碍人士,愿终身学习计算机科学与技术的所有知识。
展开
-
1747 · 机器人归来(LindCode,算法,简单)
描述在2D平面上有一个从位置(0,0)开始的机器人。 给定其移动序列,判断该机器人在完成移动后是否在(0,0)处结束。移动序列由字符串表示,字符move [i]表示其第i个移动。 有效移动是R(右),L(左),U(上)和D(下)。 如果机器人在完成所有移动后返回原点,则返回true。 否则,返回false。机器人“朝向”的方式无关紧要。 “R”将始终使机器人向右移动一次,“L”将始终向左移动等。此外,假设每次移动机器人的移动幅度相同。样例例 1:输入: "UD"输出: ..原创 2022-05-28 20:23:05 · 192 阅读 · 0 评论 -
220 · 冰雹猜想(LintCode,算法,简单)
描述数学家们曾提出一个著名的猜想——冰雹猜想。对于任意一个自然数N,如果N是偶数,就把它变成N / 2;如果N是奇数,就把它变成 3 * N+1。按照这个法则运算下去,最终必然得1。试问,该数通过几轮变换,会变成1呢?1<=n<=1000样例样例 1:输入: 4输出: 2解释: 第一轮:4/2=2第二轮:2/2=1答案为2C++:class Solution {public: /** * @param nu..原创 2022-05-27 16:15:10 · 450 阅读 · 0 评论 -
82 · 落单的数(LintCode,算法,简单)(打算学习map容器)
描述给出 2 * n + 1个数字,除其中一个数字之外其他每个数字均出现两次,找到这个数字。n≤100样例样例 1:输入:A = [1,1,2,2,3,4,4]输出:3解释:仅3出现一次样例 2:输入:A = [0,0,1]输出:1解释:仅1出现一次挑战一次遍历,常数级的额外空间复杂度C++:class Solution {public: /** * @param a: An ..原创 2022-05-25 10:22:42 · 138 阅读 · 0 评论 -
1053 · 至少是其他数字两倍的最大数(LintCode,算法,简单)
描述在一个给定的数组nums中,总是存在一个最大元素 。查找数组中的最大元素是否至少是数组中每个其他数字的两倍。如果是,则返回最大元素的索引,否则返回-1。nums 的长度范围在[1, 50]. 每个 nums[i] 的整数范围在 [0, 99].样例示例 1:输入: nums = [3, 6, 1, 0]输出: 1解释: 6是最大的整数, 对于数组中的其他整数,6大于数组中其他元素的两倍。6的索引是1, 所以我们返回1.示例 2:输入: n..原创 2022-05-24 10:37:09 · 115 阅读 · 0 评论 -
145 · 大小写转换(LintCode,算法,入门)
描述将一个字符由小写字母转换为大写字母假设输入的一定是小写字母样例样例 1:输入: 'a'输出: 'A'样例 2:输入: 'b'输出: 'B'C++:class Solution {public: /** * @param character: a character * @return: a character */ char lowercaseToUppercase(char character原创 2022-05-23 14:37:33 · 180 阅读 · 0 评论 -
14 · 二分查找(LintCode,算法,简单)失败
描述给定一个排序的整数数组(升序)和一个要查找的整数target,用O(logn)O(logn)的时间查找到target第一次出现的下标(从0开始),如果target不存在于数组中,返回-1。样例样例 1:输入:数组 = [1,4,4,5,7,7,8,9,9,10]target = 1输出:0解释:第一次出现在第0个位置。样例 2:输入:数组 = [1, 2, 3, 3, 4, 5, 10]target = 3输出:2解释:第...原创 2022-05-20 09:47:52 · 813 阅读 · 0 评论