面试题 16.02. 单词频率

这篇具有很好参考价值的文章主要介绍了面试题 16.02. 单词频率。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

设计一个方法,找出任意指定单词在一本书中的出现频率。

你的实现应该支持如下操作:

  • WordsFrequency(book)构造函数,参数为字符串数组构成的一本书
  • get(word)查询指定单词在书中出现的频率

示例:

WordsFrequency wordsFrequency = new WordsFrequency({"i", "have", "an", "apple", "he", "have", "a", "pen"});
wordsFrequency.get("you"); //返回0,"you"没有出现过
wordsFrequency.get("have"); //返回2,"have"出现2次
wordsFrequency.get("an"); //返回1
wordsFrequency.get("apple"); //返回1
wordsFrequency.get("pen"); //返回1

代码:

class WordsFrequency {
    public Map<String, Integer> map = new HashMap<>();

    public WordsFrequency(String[] book) {  
        for(String word: book){
            map.put( word, map.getOrDefault(word,0)+1 );
        }
    }
    
    public int get(String word) {
        return map.getOrDefault(word, 0);
    }
}

/**
 * Your WordsFrequency object will be instantiated and called as such:
 * WordsFrequency obj = new WordsFrequency(book);
 * int param_1 = obj.get(word);
 */

 面试题 16.02. 单词频率,# 力扣LeetCode,java,服务器,前端

 文章来源地址https://www.toymoban.com/news/detail-538724.html

到了这里,关于面试题 16.02. 单词频率的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 面试手撕leetcode 557. 反转字符串中的单词 III

            我的思路是用split方法将字符串分割成若干个单词,然后分别将这些单词反转操作,并逐一加入StringBuilder字符串中。每加入一个单词,需要空一格,但是最后一个单词不需要空格。 代码如下:

    2024年04月26日
    浏览(36)
  • leetcode 面试题 02.02. 返回倒数第k个节点

    提建议就是,有些题还是有联系的,建议就收看完  876.链表的中间节点( ) ,再将这一题联系起来 题目: 实现一种算法,找出单向链表中倒数第 k 个节点。返回该节点的值。 说明: 给定的 k 保证是有效的。 题目链接 力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 文

    2024年02月04日
    浏览(30)
  • LeetCode 面试题 02.02. 返回倒数第 k 个节点

      实现一种算法,找出单向链表中倒数第 k 个节点。返回该节点的值。   注意:本题相对原题稍作改动   点击此处跳转题目。 示例: 输入: 1-2-3-4-5 和 k = 2 输出: 4 说明: 给定的 k 保证是有效的。   先遍历一遍求总结点数 n,再顺序寻找第 n - k + 1 个节点就可以了

    2024年02月11日
    浏览(33)
  • LeetCode 面试题 02.08. 环路检测

      给定一个链表,如果它是有环链表,实现一个算法返回环路的开头节点。若环不存在,请返回 null 。   如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索

    2024年02月10日
    浏览(28)
  • LeetCode 面试题 02.04. 分割链表

      给你一个链表的头节点 head 和一个特定值 x ,请你对链表进行分隔,使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。   你不需要 保留 每个分区中各节点的初始相对位置。   点击此处跳转题目。 示例 1: 输入:head = [1,4,3,2,5,2], x = 3 输出:[1,2,2,4,3,5] 示例

    2024年02月11日
    浏览(30)
  • LeetCode 面试题 02.03. 删除中间节点

      若链表中的某个节点,既不是链表头节点,也不是链表尾节点,则称其为该链表的「中间节点」。 假定已知链表的某一个中间节点,请实现一种算法,将该节点从链表中删除。   例如,传入节点 c (位于单向链表 a-b-c-d-e-f 中),将其删除后,剩余链表为 a-b-d-e-f   

    2024年02月11日
    浏览(33)
  • leetcode 面试题 02.07. 链表相交

    题目:leetcode 面试题 02.07. 链表相交 描述: 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null 。 图示两个链表在节点 c1 开始相交: 思路: 简单来说,就是求两个链表交点节点的指针。 这里要注意,交点

    2024年02月13日
    浏览(31)
  • LeetCode面试算法-力扣 88. 合并两个有序数组

    88. 合并两个有序数组 题目描述     给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。 注意: 最终,合并后数组不应由函数返回,而是存储

    2024年02月10日
    浏览(40)
  • LeetCode 面试题 16.17. 连续数列

      给定一个整数数组,找出总和最大的连续数列,并返回总和。 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。 进阶: 如果你已经实现复杂度为 O(n) 的解法,尝试使用更为精妙的分治法求解。   点击此处跳转题目。   使用动态

    2024年02月05日
    浏览(27)
  • LeetCode 面试题 16.19. 水域大小

    来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/group-anagrams/description/ 博主Github :https://github.com/GDUT-Rp/LeetCode 你有一个用于表示一片土地的整数矩阵land,该矩阵中每个点的值代表对应地点的海拔高度。若值为0则表示水域。由垂直、水平或对角连接的水域为池塘。池塘的大

    2024年02月10日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包