高中688个高频单词_高频英语单词800

高中688个高频单词_高频英语单词800给一非空的单词列表,返回前 k 个出现次数最多的单词。返回的答案应该按单词出现频率由高到低排序。如果不同的单词有相同出现频率,按字母顺序排序。示例 1:输入: [“i”, “love”, “leetcode”, “i”, “love”, “coding”], k = 2输出: [“i”, “love”]解析: “i” 和 “love” 为出现次数最多的两个单词,均为2次。 注意,按字母顺序 “i” 在 “love” 之前。 示例 2:输入: [“the”, “day”, “is

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

给一非空的单词列表,返回前 k 个出现次数最多的单词。

返回的答案应该按单词出现频率由高到低排序。如果不同的单词有相同出现频率,按字母顺序排序。

示例 1:

输入: ["i", "love", "leetcode", "i", "love", "coding"], k = 2
输出: ["i", "love"]
解析: "i""love" 为出现次数最多的两个单词,均为2次。
    注意,按字母顺序 "i""love" 之前。
 

示例 2:

输入: ["the", "day", "is", "sunny", "the", "the", "the", "sunny", "is", "is"], k = 4
输出: ["the", "is", "sunny", "day"]
解析: "the", "is", "sunny""day" 是出现次数最多的四个单词,
    出现次数依次为 4, 3, 2 和 1 次。
 

注意:

假定 k 总为有效值, 1 ≤ k ≤ 集合元素数。
输入的单词均由小写字母组成。

扩展练习:

尝试以 O(n log k) 时间复杂度和 O(n) 空间复杂度解决。


class Solution { 
   
public:
struct  Node{ 
   
    string s;
    int val;
    Node(string s,int v){ 
   
        this->s = s,val = v;
    }
    bool operator>(const Node &b)const{ 
   
        if(val == b.val)return s < b.s;
        return val > b.val;
    }
};
    vector<string> topKFrequent(vector<string>& words, int k) { 
   
        unordered_map<string,int>m;
        for(auto &a : words){ 
   
            if(!m.count(a))m[a] = 0;
            m[a] ++;
        }
        priority_queue<Node,vector<Node>,greater<Node> >p;
        unordered_map<string,int>::iterator it;
        for(it = m.begin();it != m.end();it ++){ 
   
            Node a(it->first,it->second);
            if(p.size() == k){ 
   
                if(a > p.top()){ 
   
                    p.pop();
                    p.push(a);
                }
            }
            else p.push(a);
        }
        vector<string>ans;
        while(p.size()){ 
   
            ans.push_back(p.top().s);
            p.pop();
        }
        reverse(ans.begin(),ans.end());
        return ans;
    }
};
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/168559.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • x201换风扇_x201i拆机风扇清理怎么办【图文】

    x201换风扇_x201i拆机风扇清理怎么办【图文】总所周知,笔记本室友大大小小的配置组装而成的,而笔记本同样的,有时也会存在着或多或少的故障,又或者有时由于好奇心的趋势,让我们相对笔记本内部的相关配置做更深一步的了解,这个时候,我们会选择对笔记本进行拆机,从而对风扇进行清理,但是我们又怕盲目的拆机有可能会对笔记本造成损坏,那么,x201i拆机风扇清理应该怎么办呢?下面,就让我们来认识一下,x201i拆机风扇清理应该怎么办?笔记本散热风扇使用时间长…

    2022年6月27日
    24
  • 提高网站页面加载速度的方法

    提高网站页面加载速度的方法

    2021年9月23日
    52
  • ubuntu添加静态路由表_Ubuntu配置静态ip

    ubuntu添加静态路由表_Ubuntu配置静态ip使用route命令(添加临时路由)添加到主机的路由#routeadd-host192.168.1.123deveth0#routeadd-host192.168.1.123gw192.168.1.1添加到网络的路由#routeadd-net192.168.1.123netmask255.255.255.0eth0#routeadd-net192.168…

    2025年11月21日
    4
  • zencart模板修改 (详细)

    zencart模板修改 (详细)下面简单的介绍下zencart网站模板的修改。修改较多的地方:(常用代码)一:头部文件为(例子):D:\AppServ\www\zencart12698\includes\templates\theme3\common–tpl_header.php1.搜索模块功能:——————-标题:<?phpechoBOX_HEADING_SEARCH…

    2022年7月27日
    5
  • 如何用simulink仿真电路图_三菱触摸屏与FX5U通信

    如何用simulink仿真电路图_三菱触摸屏与FX5U通信今天说说三菱FX5U模块硬件的接线实例,主要有以下几个方面:电源AC、DC接线、输入输出接线、模拟量接线。不同原理有不同的接线方式,现在给大家仔细讲解分享!AC电源接线例漏型输入[-公共端]时的电源接线例源型输入[+公共端]时的电源接线例FX5-1PSU-5V的漏型输入[-公共端]的接线例FX5-1PSU-5V的源型输入[+公共端]的接线例DC电源接线例漏型输入[-公共端]时的电源接线…

    2025年10月18日
    4
  • linux open详解,Linux系统open函数详解[通俗易懂]

    linux open详解,Linux系统open函数详解[通俗易懂]Linux系统中open函数主要作用就是打开和创建文件,可以根据参数来定制我们需要的文件的属性和用户权限等各种参数,下面良许教程网为大家分享一下Linux系统open函数具体使用方法。一、open函数用来干什么open函数在Linux下一般用来打开或者创建一个文件,我们可以根据参数来定制我们需要的文件的属性和用户权限等各种参数。二、open函数的定义和参数我们首先来看下open函数在Linux下的…

    2022年5月26日
    142

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号