OBKoro1
OBKoro1
### [博客链接](http://obkoro1.com/web_accumulate/algorithm/simple/%E5%AD%97%E7%AC%A6%E4%B8%B2%E5%8E%8B%E7%BC%A9.html) # 字符串压缩 # 难度:简单 # 描述: 设计一种方法,通过给重复字符计数来进行基本的字符串压缩。 例如,字符串 aabcccccaaa 可压缩为 a2b1c5a3 。而如果压缩后的字符数不小于原始的字符数,则返回原始的字符串。 可以假设字符串仅包括 a-z 的字母。 # 样例: str=aabcccccaaa 返回 a2b1c5a3 str=aabbcc 返回 aabbcc str=aaaa 返回 a4 # 思路分析:...
### [博客链接](http://obkoro1.com/web_accumulate/algorithm/simple/%E5%AD%90%E6%95%B0%E7%BB%84%E4%B9%8B%E5%92%8C.html) # 找到和为零的子数组 # 难度:简单 # 描述: 给定一个整数数组,找到和为零的子数组。你的代码应该返回满足要求的子数组的起始位置和结束位置 # 样例: 给出 [-3, 1, 2, -3, 4],返回[0, 2] 或者 [1, 3] # 代码模板: /** * @param nums: A list of...
### [博客链接](http://obkoro1.com/web_accumulate/algorithm/simple/%E5%A7%93%E5%90%8D%E5%8E%BB%E9%87%8D.html) # 姓名去重 # 描述 给一串名字,将他们去重之后返回。两个名字重复是说在忽略大小写的情况下是一样的。 # 说明: 你可以假设名字只包含大小写字母和空格。 # 样例: 给出: [ 'James', 'james', 'Bill Gates', 'bill Gates', 'Hello World', 'HELLO WORLD', 'Helloworld' ]; 返回: ['james', 'bill gates',...
### [博客链接](http://obkoro1.com/web_accumulate/algorithm/simple/%E5%A5%87%E5%81%B6%E5%88%86%E5%89%B2%E6%95%B0%E7%BB%84.html) # 奇偶分割数组 # 难度:简单 # 描述: 分割一个整数数组,使得奇数在前偶数在后。 # 样例: 给定 [1, 2, 3, 4],返回 [1, 3, 2, 4]。 # 增加一下难度: 给定乱序数组:[2, 5, 1, 6, 3, 4],返回[1, 3, 5,...
### [博客链接](http://obkoro1.com/web_accumulate/algorithm/simple/%E5%9B%9E%E6%96%87.html) # 删除一个字母的回文 # 描述 给定非空字符串 s,您最多可以删除一个字符。判断是否可以成为回文。 该字符串仅包含小写字符 a-z,字符串的最大长度为 50000。 # 样例: Given s = "aba" return true Given s = "abca" return true // delete c # 题目分析:...
### [博客链接](http://obkoro1.com/web_accumulate/algorithm/simple/%E5%8F%8D%E8%BD%AC%E6%95%B4%E6%95%B0.html) # 反转整数 # 描述 将一个整数中的数字进行颠倒,当颠倒后的整数溢出时,返回 0 (标记为 32 位整数)。 # 样例: 给定 x = 123,返回 321 给定 x = -123,返回 -321 给定 x = 1534236469, 返回 0 #...
### [博客链接](http://obkoro1.com/web_accumulate/algorithm/simple/%E5%88%A4%E6%96%AD%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E5%BE%AA%E7%8E%AF%E7%A7%BB%E5%8A%A8.html) # 判断字符串的循环移动 # 难度:简单 # 描述: 可以检验某个单词是否为另一个单词的子字符串。给定 s1 和 s2,请设计一种方法来检验 s2 是否为 s1 的循环移动后的字符串。 # 样例: s1 = waterbottle; s2 = erbottlewat; 返回true; s1 = apple; s2 =...
### [博客链接](http://obkoro1.com/web_accumulate/algorithm/simple/%E5%88%A0%E9%99%A4%E5%85%83%E7%B4%A0.html) # 原地删除数组元素 # 难度:简单 # 描述: 给定一个数组和一个值,在原地删除与值相同的数字,返回新数组的长度。 元素的顺序可以改变,并且对新的数组不会有影响。 # 样例: 给出一个数组 [0,4,4,0,0,2,4,4],和值 4 返回 4 并且 4 个元素的新数组为[0,0,0,2] # 代码模板: const removeElement = (arr, ele) => {}; #...
### [博客链接](http://obkoro1.com/web_accumulate/algorithm/simple/%E5%88%86%E8%A7%A3%E8%B4%A8%E5%9B%A0%E6%95%B0.html) # 分解质因数 # 难度:简单 # 质因数的定义: 能整除给定正整数的质数。 百度百科:质因数 # 描述: 将一个整数分解为若干质因数之乘积 你需要从小到大排列质因子 # 样例: 给出 10, 返回 [2, 5] 给出 660, 返回 [2, 2, 3, 5, 11] #...
### [博客链接](http://obkoro1.com/web_accumulate/algorithm/simple/%E4%B8%AD%E4%BD%8D%E6%95%B0.html) # 中位数 # 难度:简单 # 描述: 给定一个未排序的整数数组,找到其中位数。 中位数是排序后数组的中间值,如果数组的个数是偶数个,则返回排序后数组的第 N/2 个数。 # 样例: 给出数组[4, 5, 1, 2, 3], 返回 3 给出数组[7, 9, 4, 5],返回 5 # 思路分析: 升序排序数组 模拟几个数组的返回值,找到里面的规律,找出数组中对应元素。...