编程算法实战 第2页

编程算法题思考与实战,基于JavaScript实现

检验是否为另一个字符串循环移动后的子串

前端学堂 发布于 2019-04-11

题目-检验子字符串 检验是否为另一个字符串循环移动后的子串。给定 s1 和 s2,请设计一种方法来检验 s2 是否为 s1 的循环移动后的字符串。 示例 s1 = apple; s2 = ppale; 返回false; s2 = leapp; 返回true; 分析 第一个想法是将...

阅读(246)赞 (4)

处理回文数

1

前端学堂 发布于 2019-04-09

题目-处理回文数 给定非空字符串 s,您最多可以删除一个字符。判断是否可以成为回文。入参是一个字符串s, 该字符串仅包含小写字符 a-z,字符串的最大长度为 50000,返回删除的可能字符数组。 示例 Given s = “aba” return [] G...

阅读(155)赞 (3)

找指定范围相亲数对

1

前端学堂 发布于 2019-04-09

题目-找相亲数 亲和数,又称相亲数、友爱数、友好数,指两个正整数中,彼此的全部约数之和(本身除外)与另一方相等。毕达哥拉斯曾说:“朋友是你灵魂的倩影,要像220与284一样亲密。”人和人之间讲友情,有趣的是,数与数之间也有相类似的关系,数学家把一对存在特殊关系的数称为“亲和数”。...

阅读(235)赞 (3)

找到和为指定数值的两个数

前端学堂 发布于 2019-04-08

题目-找到两个数 一个升序数组,找到两个数和等于特定数的位置。注意索引从1开始并且数组中的一个元素只能用一次。 示例 比如 [1,2,3,4,4,9,56,90], target=8 返回[4,5] 分析 最简单的方法就是循环挨个比较,这样最坏的情况就是循环两次,时间复杂度:o(...

阅读(219)赞 (3)

找出未排序整数数组的中位数

前端学堂 发布于 2019-04-08

题目- 中位数 给定一个未排序的整数数组,找到其中位数。 中位数是排序后数组的中间值,如果数组的个数是偶数个,则返回排序后数组的第 N/2 个数。 示例 给出数组[4, 5, 1, 2, 3], 返回 3 给出数组[7, 9, 4, 5],返回 5 分析 简单的思路就是先排序,然...

阅读(231)赞 (3)

找出数组和为零的子数组

前端学堂 发布于 2019-04-08

题目-子数组和为零 给定一个整数数组,找到和为零的子数组。你的代码应该返回满足要求的子数组的起始位置和结束位置。 示例 给出[-3, 1, 2, -3, 4],返回[0, 2] 或者 [1, 3]. 分析 看清楚题目,这里的子数组是一串连续的子数组。只要找到起始位置和结束为止就可...

阅读(188)赞 (2)

计算有多少种方法爬楼梯

前端学堂 发布于 2019-04-08

题目-爬楼梯 假设你正在爬楼梯,需要 n 步你才能到达顶部。但每次你只能爬一步或者两步,你能有多少种不同的方法爬到楼顶部? 示例 比如 n=3,1+1+1=1+2=2+1=3,共有 3 种不同的方法   返回 3 分析 规则可以采用不完全归纳法看看: 0 =0 0种方法 1 = ...

阅读(378)赞 (2)

查找斐波纳契数列中第 N 个数

前端学堂 发布于 2019-04-05

题目 查找斐波纳契数列中第 N 个数 很多朋友看到“纳契”是不是很开心,这个 纳契 可不是“纳妾”,呵呵呵 所谓的斐波纳契数列是指: 前 2 个数是 0 和 1 。 第 i 个数是第 i-1 个数和第 i-2 个数的和。 斐波纳契数列的前 10 个数字是: 0, 1, 1, 2,...

阅读(262)赞 (2)

查找水仙花数

前端学堂 发布于 2019-04-05

题目 给出n,找到所有的n位十进制水仙花数。 示例 水仙花数:一个 N 位非负整数,其各位数字的 N 次方和等于该数本身。 示例: 153 = 1^3 + 5^3 + 3^3 370 = 3^3 + 7^3 + 0^3 371 = 3^3 + 7^3 + 1^3 1634 = 1...

阅读(141)赞 (2)

反转一个整数

前端学堂 发布于 2019-04-05

题目 给定一个 n 位数的整数,翻转顺序,返回翻转后的整数 示例 比如 456 翻转后 654, 100 翻转后 1 分析 问题是,001和01 要变成 1,最后转换下就好了   Just Try 请你自动动手试一下:在线编程环境 想想有没有其他思路? 想想时间和空间复...

阅读(140)赞 (2)

找出数组中出现奇数次的元素

前端学堂 发布于 2019-04-05

题目 找出给定数组中出现奇数次的元素 示例 比如array=[1,2,3,4,3,2,1,5,5,6,6,6,6], 这里面4出现了一次。 分析 idea 1 可能会想到遍历循环,统计每个字母出现的次数 idea 2 能不能一层循环就判断出现偶数次还是奇数次?   Ju...

阅读(243)赞 (2)