Freecodecamp算法

作者: 德坤丨 | 来源:发表于2016-11-28 21:39 被阅读32次

今天做到了 Freecodecamp上面的第一个算法题,虽然很基础,但还是记一下自己用的知识
每一道算法题都跟你罗列了需要用的知识,仔细查看很有用的

翻转字符串先把字符串转化成数组,再借助数组的reverse方法翻转数组顺序,最后把数组转化成字符串。你的结果必须得是一个字符串

根据题目要求大概知道需要用到三个知识

  • 字符串转换数组——(用到的是split切割方法)
  • 翻转数组顺序——(需要用到reverse方法)
  • 将数组转换为字符串——(需要用到join方法)

可以将平时刷题觉得重要指示储存在印象笔记中

最终实现代码如下

function reverseString(str) {
  var arr = str.split("");
  arr =  arr.reverse();
  arr = arr.join("");
  return arr;
}
reverseString("hello");


Factorialize a Number
问题描述: 计算一个整数的阶乘如果用字母n来代表一个整数,阶乘代表着所有小于或等于n的整数的乘积
思路就是:

  • 定义一个函数
  • 使用for循环
    最终实现代码如下
function factorialize(num) {
  var number = 1;
  for (var i = 1;i<=num;i++) {
    number = number * i;
  }
  return number;
}
factorialize(5);

Find the Longest Word in a String

找到提供的句子中最长的单词,并计算它的长度。函数的返回值应该是一个数字。
思路

  • 将字符串转换为数组
  • 计算数组的长度,利用for循环遍历数组
  • 只要遍历到数组最大的一个数组的长度 ,后面的肯定都小于

代码实现如下

function findLongestWord(str) {
  var arr = str.split(" ");//转换为数组
  var num = 0;
  for (var i = 0;i < arr.length;i++) { //遍历数组arr
    if (arr[i].length > num) {  //
      num = arr[i].length;
    }
  }
  return num;
}
findLongestWord("The quick brown fox jumped over the lazy dog");

题目

确保字符串的每个单词首字母都大写,其余部分小写。

思路

将字符串小写并切割为数组,接着用replace方法返回替换掉的值,最终将数组合并为字符串

步骤

  • toLowerCase()表示将字符串转换为小写
  • split() 是将字符串转换为数组
  • charAt()是根据字符串中的下标取出相应的值
  • replace()是将返回需要替换的值
  • join()合并字符串

实现代码如下

function titleCase(str) {
  var arr = str.toLowerCase().split(" ");
  for (var i in arr) {
    arr[i] = arr[i].replace(arr[i].charAt(0),arr[i].charAt(0).toUpperCase());
  }
  return arr.join(" ");
}

titleCase("I'm a little tea pot");

相关文章

  • Freecodecamp算法

    今天做到了 Freecodecamp上面的第一个算法题,虽然很基础,但还是记一下自己用的知识每一道算法题都跟你罗列...

  • Freecodecamp 高级算法题

    Freecodecamp 高级算法题 1. Validate US Telephone Numbers 如果传入字...

  • FreeCodeCamp Intermediate Algori

    FreeCodeCamp 中级算法 个人笔记,仅作留档 Sum All Numbers in a Range 我们...

  • Freecodecamp 算法题 (二)

    Freecodecamp 算法题 (二) 1. Sum All Numbers in a Range 我们会传递给...

  • FreeCodeCamp中级算法

    使用给定的参数对句子执行一次查找和替换,然后返回新句子。 第一个参数是将要对其执行查找和替换的句子。 第二个参数是...

  • Freecodecamp中级算法

    求小于等于给定数值的质数之和。 只有 1 和它本身两个约数的数叫质数。例如,2 是质数,因为它只能被 1 和 2 ...

  • freeCodeCamp——算法挑战

    Reverse a String翻转字符串 先把字符串转化成数组,再借助数组的reverse方法翻转数组顺序,最后...

  • FreeCodeCamp基础算法

    终于把FCC的基础javascript算法做完了,来总结一下。 翻转字符串 先把字符串转化成数组,再借助数组的re...

  • Freecodecamp 算法题

    Freecodecamp 算法题 1. Reverse a String 翻转字符串 先把字符串转化成数组,再借助...

  • 代码学习网站

    代码学习网站: 1.代码编译 codewars 2.算法 lintCode 3.前端 freecodecamp

网友评论

    本文标题:Freecodecamp算法

    本文链接:https://www.haomeiwen.com/subject/hizopttx.html