【问题标题】:Write a Domain frequency 'categorize' function which accepts array of URLS and returns expected output编写一个接受 URL 数组并返回预期输出的域频率“分类”函数
【发布时间】:2021-08-04 07:26:27
【问题描述】:

输入:

const urls = [
    'www.google.com',
    'www.yahoo.com',
    'xyz.www.google.com',
    'abc.xyz.www.google.com',
    'google.com',
    'yahoo.com',
    'news.yahoo.com',
    'abc.news.yahoo.com',
    'abc.xyz.www.google.com',
    'www.yahoo.com',
    'google.com',
];
categorize(urls);

上面的分类函数应该返回下面的输出。 例如,“www.google.com”出现在“www.google.com”、“xyz.www.google.com”、“abc.xyz.www.google.com”等。 'google.com' 出现在 'google.com'、'www.google.com'、'xyz.www.google.com'、'abc.xyz.www.google.com' 等中。

预期输出:

{
 "google.com": 6,
 "yahoo.com": 5,
 "www.google.com": 4,
 "www.yahoo.com": 2,
 "news.yahoo.com": 2,
 "xyz.www.google.com": 3,
 "abc.news.yahoo.com": 1,
 "abc.xyz.www.google.com": 2,
 "com": 11
}

【问题讨论】:

    标签: javascript arrays algorithm data-structures


    【解决方案1】:

    您首先需要创建一个对象,例如const categorized = {}

    然后使用 for 循环(或 forEach)遍历 url。

    对于每个网址,您需要找到所有可能的域。可能有一些很好的方法可以做到这一点。

    对于每个域,如果对象尚不存在,则将键添加到对象,并将值设置为 1。如果键已存在,则将值加 1。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多