This time I bring you common algorithm questions for front-end interviews in 2018. What are the precautions for front-end interviews in 2018? Here are practical cases, let’s take a look.
[Related recommendations: Front-end interview questions(2020)]
1ObjectConvert to array
1 | var obj={ 0:'我', 1:'的', 2:'妈', 3:'呀', length:4}
|
Copy after login
2. Statistics A stringThe most frequent letters
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | function countMost(str) { const objCount = {};
str = str.split('').sort().join(''); for (let i=0; i<str.length; i++) { let lastIndex = str.lastIndexOf(str[i]);
num = lastIndex - i + 1;
objCount[str[i]] = num;
i = lastIndex;
} let maxStr = [],
maxValue = 1; for (let p in objCount) { if (objCount[p] > maxValue) {
maxStr = [];
maxStr.push(p);
maxValue = objCount[p];
} else if (objCount[p] == maxValue){
maxStr.push(p);
}
} return maxStr.length == 1? maxStr[0] : maxStr;
}console.log(countMost('afjghdfffffraaaasdddddenas'));
|
Copy after login
3. Find the maximum difference between the following positive arrays
1 2 3 4 5 6 | const arr = [10,5,11,7,8,9]; function getMaxProfit(arr) { let max = arr[0],
min = arr[0]; for (let i=1; i<arr.length; i++) {
max = Math.max(max,arr[i]);
min = Math.min(min,arr[i]);
} return max - min;
}console.log(getMaxProfit(arr));
|
Copy after login
4. Get the maximum or minimum value in the array
1 2 3 4 | function maxAndMin(arr){ return { max:Math.max.apply(null,arr.join(',').split(',')), min:Math.min.apply(null,arr.join(',').split(','))
}
} var arr = [22,0,[3,4,2,55]];
maxAndMin(arr).max;
|
Copy after login
5. Generate a random alphanumeric string of specified length
1 2 | function getRandomStr(len) { var str = "" ; for ( ; str.length < len; str += Math.random().toString(36). substr (2)); return str. substr (0, len);
}
|
Copy after login
I believe you have mastered the method after reading the case in this article. For more exciting information, please pay attention to the php Chinese websiteOthersrelated articles!
Related reading:
Tips on using jq to send multiple ajax and then execute callbacks
How to use pseudo-element first -letter capitalizes the first letter of the text
##Detailed explanation of JavaScript function overloading
The above is the detailed content of Common algorithm questions for front-end interviews in 2018. For more information, please follow other related articles on the PHP Chinese website!