Javascript编程题

感谢您能抽出几分钟时间来参加本次答题,现在我们就马上开始吧!
* 一:
编写一个函数,在输入一个非负整数后,返回其二进制表示形式中等于1的位数的计数。

示例

输入:n = 1234
输出:5
解释:1234 二进制为 10011010010,其中 1 的个数为 5

支持语言:Lua
PHP
Java
Ruby
C Language
C++
C#
Golang
Python 2
Python 3
JavaScript
* 二:
设计一个函数,可以传入一个或多个单词的字符串,并返回该字符串,但所有五个或更多字母的单词都前后颠倒。
示例1
输入:str = "This is a test"
输出:"This is a test"
示例2
输入:str = "This is another test"
输出:"This is rehtona test"
注1:传入的字符串仅包含字母和空格
注2:仅当存在多个单词时才包含空格

支持语言:Lua
PHP
Java
Ruby
C Language
C++
C#
Golang
Python 2
Python 3
JavaScript
* 三:
编写一个函数,接受一个字符串后,返回字符串中出现多次的字母或数字的个数。
注1:字母不区分大小写
注2:输入的字符串仅包含字母和数字
示例 1:
输入:"abcde"
输出: 1
解释:每个字符只出现了一次
示例 2:
输入:"aabbcde"
输出: 2
解释:存在出现两次的字符,'a'和'b'
示例 3:
输入:"aA11"
输出: 2
解释:存在出现两次的字符'a'和'1',不区分字母大小写

支持语言:Lua
PHP
Java
Ruby
C Language
C++
C#
Golang
Python 2
Python 3
JavaScript
* 四:
编写函数 scramble(str1, str2),当 str1 字符串中的部分字符能够重排后与 str2 匹配就返回 true,否则返回 false。
注意:
字符串只包含 a - z 的小写英文字符,不包含标点符号或数字。
请考虑执行效率最高的实现方式。
如果 str1 或 str2 为 null 时终止函数。
示例1
输入:str1 = 'rkqodlw', str2 = 'world'
输出:true
示例2
输入:str1 = 'cedewaraaossoqqyt', str2 = 'codewars'
输出:true
示例3
输入:str1 = 'katas', str2 = 'steak'
输出:false
* 五:
提供两个整数 a 和 b,可以为正也可以为负,计算 a 至 b 之间(包含 a 和 b)的所有整数的和,并将计算结果返回。如果提供的两个整数相等就返回 a 或 b。
注意: a 并不一定小于 b!
示例1
输入:a = 1, b = 0
输出:1
解释:1 + 0 = 1,返回 1
示例2
输入:a = 1, b = 1
输出:1
解释:a = b = 1,返回 1
示例3
输入:a = -1, b = 2
输出:2
解释:-1 + 0 + 1 + 2 = 2,返回 2

支持语言:Lua
PHP
Java
Ruby
C Language
C++
C#
Golang
Python 2
Python 3
JavaScript
* 六:
编写一个函数,接受一个数字后重新排列,返回一个尽可能大的新数字
示例1:
输入:num = "23953"
输出:"95332"
示例2:
输入:num = "12743"
输出:"74321"
示例3:
输入:num = "21"
输出:"21"
注:字符串的长度在0 ~ 1000之间

支持语言:Lua
PHP
Java
Ruby
C Language
C++
C#
Golang
Python 2
Python 3
JavaScript
* 七:
Polycarpus 在本镇最好的夜店做 DJ,他习惯使用 dubstep 类型的音乐。最近他决定将几首老歌 remix。
我们先假设一首歌是由一些单词组成的(这些歌不包含 WUB)。我们要使这首歌的 dubstep 部分进行 remix,Polycarpus 在这首歌的第一个单词之前(可以插入 0 个单词),在最后一个单词之后(可以插入 0 个单词),在单词之间(在相邻的单词之间最少要插入 1 个单词),插入一定数量的单词 "WUB",然后再将所有的单词剪辑在一起(也包括 "WUB"),形成一句歌词,并奏响歌曲开始演唱。
例如:
一首歌的歌词是 “I AM X",将它转换为 dubstep 再 remix 后为 "WUBWUBIWUBAMWUBWUBX",但不能转换为 "WUBWUBIAMWUBX"。
最近,Jonny 听了 Polycarpus 的新磁带,但他不怎么喜欢现代音乐,他希望找出被 remix 之前的歌曲,帮帮 Jonny 恢复 remix 前的歌词。
输入项为一个非空的字符串,而且只有大写的英文字符,字符串长度不会超过 200 个字符。
需要将 Polycarpus 进行 remix 前的歌词返回,并且通过每个单词间通过空格分隔。
 
示例
输入:song = "WUBWEWUBAREWUBWUBTHEWUBCHAMPIONSWUBMYWUBFRIENDWUB"
输出:"WE ARE THE CHAMPIONS MY FRIEND"

支持语言:Lua
PHP
Java
Ruby
C Language
C++
C#
Golang
Python 2
Python 3
JavaScript
* 八:
实现一个函数,计算一个字符串中相邻重复单词的个数(不区分大小写)。两个或两个以上相等的单词依次出现视为一个重复单词。
示例1
输入:s = "dog cat"
输出:0
示例2
输入:s = "dog DOG cat"
输出:1
示例3
输入:s = "cat cat dog dog cat cat"
输出:3

支持语言:Lua
PHP
Java
Ruby
C Language
C++
C#
Golang
Python 2
Python 3
JavaScript
* 九:
实现一个函数,从一个用户哈希表中找到排名最接近于荣誉值的用户,并返回该用户的排名。用户哈希表的键是排名,值是荣誉值。
如果没有用户的排名与荣誉值相等,就返回最接近的用户的排名。如果有几个最接近的用户,则返回排名最低的一个的排名。
排名 荣誉值
users = { 1 => 93,
10 => 55,
15 => 30,
20 => 19, <--- 结果
23 => 11,
30 => 2 }

支持语言:
Java
C++
C#
Golang
Python 2
Python 3
JavaScript
* 十:
请实现一个返回指定高度圣诞树的函数。
例如height = 5应返回:
*
***
*****
*******
*********
高度为 0 到 100 之间的整数。
用空格填充,使每行长度相同。最后一行只有星星,没有空格。
注:
你需要保证每一行的长度都与最后一行相等
每一行除了*的位置,其他位置用空格填充
最后一行只有*,没有空格和换行符

支持语言:Lua
PHP
Java
Ruby
C Language
C++
C#
Golang
Python 2
Python 3
JavaScript