811. Subdomain Visit Count - LeetCode

Question

811.?Subdomain Visit Count

Example 1:
Input:
["9001 discuss.leetcode.com"]
Output:
["9001 discuss.leetcode.com", "9001 leetcode.com", "9001 com"]
Explanation:
We only have one website domain: "discuss.leetcode.com". As discussed above, the subdomain "leetcode.com" and "com" will also be visited. So they will all be visited 9001 times.
Example 2:
Input:
["900 google.mail.com", "50 yahoo.com", "1 intel.mail.com", "5 wiki.org"]
Output:
["901 mail.com","50 yahoo.com","900 google.mail.com","5 wiki.org","5 org","1 intel.mail.com","951 com"]
Explanation:
We will visit "google.mail.com" 900 times, "yahoo.com" 50 times, "intel.mail.com" once and "wiki.org" 5 times. For the subdomains, we will visit "mail.com" 900 + 1 = 901 times, "com" 900 + 50 + 1 = 951 times, and "org" 5 times.

Solution

题目大意:统计访问子域名的次数

思路:遍历每个域名及其子域名,将其访问次数保存到map里

Java实现:

public List<String> subdomainVisits(String[] cpdomains) {
    Map<String, Integer> map = new HashMap<>();
    for (String str : cpdomains) {
        String[] arr = str.split(" ");
        int baseCount = Integer.parseInt(arr[0]);
        String tmpSub = arr[1];
        int fromIndex = 0;
        while (fromIndex != -1) {
            // System.out.println(fromIndex);
            String subDomain = tmpSub.substring(fromIndex + (fromIndex != 0 ? 1 : 0));
            Integer oldCount = map.get(subDomain) == null ? 0 : map.get(subDomain);
            map.put(subDomain, oldCount + baseCount);
            fromIndex = tmpSub.indexOf(".", fromIndex + 1);
        }
    }

    List<String> retList = new ArrayList<>();
    for (Map.Entry<String, Integer> entry : map.entrySet()) {
        retList.add(entry.getValue() + " " + entry.getKey());
    }
    return retList;
}

原文地址:https://www.cnblogs.com/okokabcd/p/9379940.html

时间: 2024-08-29 21:21:37

811. Subdomain Visit Count - LeetCode的相关文章

[LeetCode&amp;Python] Problem 811. Subdomain Visit Count

A website domain like "discuss.leetcode.com" consists of various subdomains. At the top level, we have "com", at the next level, we have "leetcode.com", and at the lowest level, "discuss.leetcode.com". When we visit

LeetCode 811 Subdomain Visit Count 解题报告

题目要求 A website domain like "discuss.leetcode.com" consists of various subdomains. At the top level, we have "com", at the next level, we have "leetcode.com", and at the lowest level, "discuss.leetcode.com". When we

白菜刷LeetCode记-811.Subdomain Visit Count

好久没有写LeetCode,所以说坚持真的是一件很难的事情啊.今日重新开始吧,先来一道简单的题目,如下: 这道题首先想到的还是使用Map,代码如下: /** * @param {string[]} cpdomains * @return {string[]} */ var subdomainVisits = function(cpdomains) { let tmp = new Map(); let res = new Array(); for(let i = 0 ; i < cpdomains

811. Subdomain Visit Count

题目描述: A website domain like "discuss.leetcode.com" consists of various subdomains. At the top level, we have "com", at the next level, we have "leetcode.com", and at the lowest level, "discuss.leetcode.com". When we

811. Subdomain Visit Count (5月23日)

解答 class Solution { public: vector<string> subdomainVisits(vector<string>& cpdomains) { vector<string> result; map<string,int> pair; for(string str:cpdomains){ auto space=str.find(' '); int temp=stoi(str.substr(0,space)); str=s

Leetcode811 Subdomain Visit Count

由于不熟悉HashMap,这道Easy的题做出了Midium的感觉/笑哭. 大体思路没什么特别的,外循环对Input里的每一条进行处理,内循环把每个Subdomain挑出来,并计数到HashMap中. 方法1: class Solution { public static List<String> subdomainVisits(String[] cpdomains) { HashMap<String,Integer> map = new HashMap(); for(String

[leetcode-811-Subdomain Visit Count]

A website domain like "discuss.leetcode.com" consists of various subdomains. At the top level, we have "com", at the next level, we have "leetcode.com", and at the lowest level, "discuss.leetcode.com". When we visit

arts-week2

Algorithm 739. Daily Temperatures - LeetCode 535. Encode and Decode TinyURL - LeetCode 811. Subdomain Visit Count - LeetCode 706. Design HashMap - LeetCode 771. Jewels and Stones - LeetCode 204. Count Primes - LeetCode 445. Add Two Numbers II - LeetC

【LeetCode】哈希表 hash_table(共88题)

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica } [1]Two Sum (2018年11月9日,k-sum专题,算法群衍生题) 给了一个数组 nums, 和一个 target 数字,要求返回一个下标的 pair, 使得这两个元素相加等于 target . 题解:我这次最大范围的优化代码, hash-table + one pass,时间复杂度 O(N),空间复杂度 O(N).重点在于动态找,一边生成hash-tabl