- 获取 字符串出现最多的字符和出现的次数
function getMoreString(str){
let maxStr = ''
let maxNum = 0
let obj = {}
for(let i=0;i<str.length;i++){
if(!obj[str[i]]){
obj[str[i]] = 0
}else{
obj[str[i]]++
}
}
for(let k in obj){
if(obj[k] > maxNum ){
maxNum = obj[k]
maxStr = k
}
}
return console.log('最多字符串':maxStr,'最多次数':maxNum)
}
- 冒泡排序 一
function getBubble(arr){
let temp = []
for(let i=0;i<arr.length;i++){
for(let j=0;j<arr.length - i -1;j++){
if(arr[j] > arr[j+1]){
temp = arr[j]
arr[j] = arr[j+1]
arr[j+1] = temp
}
}
}
return arr
}
- 冒泡排序 二
function getBubble(arr){
let temp = []
for(let i=0;i<arr.length-1;i++){
for(let j=0;j<arr.length - i -1;j++){
if(arr[j] > arr[j+1]){
[ arr[j],arr[j+1] ] = [ arr[j+1],arr[j] ]
}
}
}
return arr
}
- 数组扁平化 一
function flatten(arr){
// arr.flat(n) n 默认扁平化一次 Infinity 无限次
return arr.flat(Infinity)
}
- 数组扁平化 二
function flatten(arr){
while(arr.some(item =>(Array.isArray(item))){
arr = [].contact(...arr)
}
return arr
}
- 数组扁平化 三
function flatten(arr){
let result = []
for(let i=0;i<arr.length;i++){
if(Array.isArray(arr[i])){
result = result.contact(flatten(arr[i]))
}else{
result = result.contact(arr[i])
}
}
return result
}
这些是 基础算法 ,如果觉得我写的算法有问题 欢迎提出来,感谢!