算法的教学

摄氏度转换为华氏度

function convertCtoF(celsius) {
  let fahrenheit = celsius * 9 / 5 + 32;
  
  return fahrenheit;
}

console.log(convertCtoF(-30)); // 返回 -22
console.log(convertCtoF(-10)); // 返回 14
console.log(convertCtoF(0)); // 返回 32
console.log(convertCtoF(20)); // 返回 68
console.log(convertCtoF(30)); // 返回 86

实现字符串的反转

以使用JavaScript的内置方法split()将字符串拆分为字符数组,然后使用reverse()方法将数组反转,最后使用join()方法将数组拼接为字符串。以下是修改后的代码:
function reverseString(str) {
  return str.split('').reverse().join('');
}

reverseString("hello"); // 返回 "olleh"

计算一个数的阶乘

使用循环的方法来计算阶乘的函数
function factorialize(num) {
  if (num === 0 || num === 1) {
    return 1;
  }
  
  let result = 1;
  for (let i = 2; i <= num; i++) {
    result *= i;
  }
  
  return result;
}

console.log(factorialize(5)); // 输出 120
console.log(factorialize(10)); // 输出 3628800
console.log(factorialize(20)); // 输出 2432902008176640000
console.log(factorialize(0)); // 输出 1

我们首先判断输入的数是否为0或1,如果是,则直接返回1。然后使用一个循环,从2开始依次乘以每个数,最后得到的结果就是阶乘的值

找出字符串中的最长单词

function findLongestWordLength(str) {
  // 将字符串按空格分割成单词数组
  var words = str.split(" ");
  var maxLength = 0;

  // 遍历单词数组,找到最长单词的长度
  for (var i = 0; i < words.length; i++) {
    if (words[i].length > maxLength) {
      maxLength = words[i].length;
    }
  }

  return maxLength;
}

findLongestWordLength("The quick brown fox jumped over the lazy dog");

找出多个数组中的最大数字

function largestOfFour(arr) {
  var result = [];
  for (var i = 0; i < arr.length; i++) {
    var largestNum = arr[i][0];
    for (var j = 1; j < arr[i].length; j++) {
      if (arr[i][j] > largestNum) {
        largestNum = arr[i][j];
      }
    }
    result.push(largestNum);
  }
  return result;
}

largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]);

段代码会遍历给定的二维数组 arr,找出每个子数组中的最大值,并将最大值添加到结果数组 result 中。最后返回结果数组

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值