title: 华为od刷题笔记
category: 刷题
tags: 刷题,华为机试,数据结构与算法
updatedAt: 2023-01-20T15:09:50.957Z
createdAt: 2023-01-20T15:05:13.128Z
liuaw的刷题笔记
这里做一个准备过程的记录吧.
一 牛客-华为机试题库(Javascript刷题记录)
华为机试主要环境是Javascript Node: Node 12.18
刷题案例
// Javascript Node
var readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
rl.on('line', function(line){
var tokens = line.split(' ');
console.log(parseInt(tokens[0]) + parseInt(tokens[1]));
});
HJ1 字符串最后一个字符的长度
思路:题目中最后一个单词即表示,空格隔开后最后一个字符串对象,可以利用split函数将字符串分割成字符串数组,通过length来获取最后一个字符串数组对象的长度,即为最后一个单词的长度
const fn = (str) =>{
// 利用split函数将String对象分隔成字符串数组. 以下实例按照空格分隔
const arr = str.split(' ')
// 此处获取并返回最后一个字符串数组,即题目中提到的最后一个单词 利用.length获取其长度
return arr[arr.length - 1].length
}
// 调用readline获取输入的数据
const words = readline()
// console.log打印结果
console.log(fn(words))
HJ2 计算某字符串出现长度
思路:这道题刚开始看,没感觉太有思路,看到题解中利用toLocaleLowerCase函数将输入的字符串(str),和第二个输入的字符(code)都转换成效写,利用code将字符串分隔开,分隔开字符串数组中字符串的长度-1即为小写字母的长度
const line = readline()
const code = readline()
function findSum (str,s){
// toLocaleLowerCase可以根据任意语言环境的大小写映射
const res = str.toLocaleLow