检查字符串中的字母

时间:2017-04-30 08:34:58

标签: javascript arrays string algorithm

我正在制作算法,检查第一个单词中是否存在来自第二个单词的字母。例如:[“hello”,“hey”]应返回false,[“hello”,“Ello”]应返回true。 这是我的代码:

function mutation(arr) {
  var array = arr[0].toLowerCase();
  var word_temp = arr[1].toLowerCase();
  var word = word_temp.split("");
  var l = word_temp.length;
  var number = 0;
  for (i = 0; i == l; i++) {
    if (array.indexOf(word[i]) > -1) {
      number++;
    }
  }
  if (number == l) {
    return true;
  } else {
    return false;
  }
}

mutation(["zyxwvutsrqponmlkjihgfedcba", "qrstu"]);

我不知道为什么,但它没有向变量number添加任何内容。我不想要完整算法的解决方案。我只想知道为什么变量number仍然等于零。 谢谢大家的时间:))

5 个答案:

答案 0 :(得分:0)

你的for循环错了。它应该是:

for (i = 0; i < l; i++) {
//Code
}

答案 1 :(得分:0)

您的代码不必要复杂。你可以这样。

function mutation(arr) {
    return (arr[0].toLowerCase().indexOf(arr[1].toLowerCase())>=0);
}
console.log(mutation(["zyxwvutsrqponmlkjihgfedcba", "qrstu"]));

答案 2 :(得分:0)

For循环:

  

如果condition的值为true,则执行循环语句。如果condition的值为false,则for循环终止。

您的陈述从一开始就是false。只需将i == l更改为i < l即可。

答案 3 :(得分:0)

import urllib2
from bs4 import BeautifulSoup

response = urllib2.urlopen('http://www.thehindu.com/sci-tech/science/iit-bombay-birds-eye-view-and-quantum-biology/article18191268.ece'
)
html = response.read()

soup = BeautifulSoup(html, 'html.parser')

ut_container = soup.find("div", {"class": "ut-container"})
time = ut_container.find("none").text.strip()
print(time)

答案 4 :(得分:0)

问题解决了。 我修复了我的for循环并缩短了代码。然后我也尝试了包含更容易的解决方案。 非常感谢你们!