当前位置: 首页 > news >正文

kali做钓鱼网站wordpress禁止自适应

kali做钓鱼网站,wordpress禁止自适应,wordpress store,怎么把产品快速宣传并推广原题链接#x1f517;#xff1a;前 K 个高频元素 难度#xff1a;中等⭐️⭐️ 题目 给你一个整数数组 nums 和一个整数 k #xff0c;请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 示例 1: 输入: nums [1,1,1,2,2,3], k 2 输出: [1,2] 示例 2…原题链接前 K 个高频元素 难度中等⭐️⭐️ 题目 给你一个整数数组 nums 和一个整数 k 请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 示例 1: 输入: nums [1,1,1,2,2,3], k 2 输出: [1,2] 示例 2: 输入: nums [1], k 1 输出: [1] 提示 1 nums.length 105k 的取值范围是 [1, 数组中不相同的元素的个数]题目数据保证答案唯一换句话说数组中前 k 个高频元素的集合是唯一的 进阶你所设计算法的时间复杂度 必须 优于 O(n log n) 其中 n 是数组大小。 堆 堆Heap是一种特殊的树状数据结构它满足两个主要特性 结构性堆通常是一棵完全二叉树这意味着除了最后一层外其他每一层都被完全填满并且最后一层的节点尽可能地集中在左侧。 堆属性堆中的每一个节点都必须满足特定的顺序要求这个要求可以是最大堆属性或最小堆属性。 最大堆任何一个父节点的值都大于或等于它的子节点的值。这意味着堆的根节点是所有节点中的最大值。最小堆任何一个父节点的值都小于或等于它的子节点的值。这意味着堆的根节点是所有节点中的最小值。 堆在计算机科学中广泛应用于各种算法和数据结构特别是在需要快速访问最大元素或最小元素的场景中。例如堆排序算法、优先队列的实现等。 在编程语言中堆通常通过优先队列Priority Queue这种抽象数据类型来实现。优先队列允许快速地插入新元素和删除或检索最大或最小元素。 堆的常见操作包括 插入Push向堆中添加一个新元素。删除最大/最小元素Pop移除并返回堆中的最大或最小元素。查找最大/最小元素Peek/Top返回堆中的最大或最小元素但不从堆中移除它。 堆的实现可以通过数组来完成其中每个元素的索引和其父节点或子节点的索引之间有一定的数学关系。例如在数组表示的堆中一个元素的父节点可以通过(i-1)/2计算得到其中i是该元素的索引其子节点可以通过2*i 1左子节点和2*i 2右子节点计算得到。 题解 解题思路 数组中的第K个最大元素是LeetCode上的一道经典题目它要求在给定的未排序数组中找到第K个最大的元素。以下是解题的几种思路 排序 思路首先对数组进行排序然后直接访问数组的倒数第K个位置的元素。复杂度时间复杂度为O(n log n)空间复杂度为O(1)如果使用原地排序算法。 快速选择Quick Select 思路这是快速排序算法的变种。选择一个枢纽pivot元素将数组分为两部分一部分包含比枢纽小的元素另一部分包含比枢纽大的元素。然后根据枢纽的位置来决定是继续在左侧还是右侧搜索第K个最大元素。复杂度平均时间复杂度为O(n)最坏情况已排序数组为O(n^2)。 堆优先队列 思路 使用最小堆维护一个大小为K的最小堆遍历数组对于每个元素如果堆未满则直接加入如果堆满了且当前元素大于堆顶元素则替换堆顶元素。使用最大堆维护一个大小为n的堆遍历数组对于每个元素如果堆未满则直接加入如果堆满了且当前元素小于堆顶元素则不加入。最后堆顶元素是第K大的元素但这种方法需要O(n)空间。 复杂度时间复杂度为O(n log K)空间复杂度为O(K)。 BFPRT算法中位数的中位数算法 思路这是一种选择算法用于找到未排序数组的第K小或第K大元素。它首先找到一组“候选”元素然后递归地在这组候选元素中找到中位数直到找到第K小的元素。复杂度平均时间复杂度为O(n)。 线性时间选择算法 思路这是一种基于随机化的算法通过随机选择枢纽元素来减少最坏情况的发生概率。复杂度期望时间复杂度为O(n)。 c demo #include iostream #include vector #include unordered_map #include algorithm// 自定义比较函数首先按频率降序频率相同则按元素值升序 bool compare(const std::pairint, int a, const std::pairint, int b) {if (a.second b.second) {return a.first b.first;}return a.second b.second; }std::vectorint topKFrequent(const std::vectorint nums, int k) {std::unordered_mapint, int freqMap;for (int num : nums) {freqMap[num];}std::vectorstd::pairint, int freqList;for (const auto kv : freqMap) {freqList.emplace_back(kv.first, kv.second);}// 根据频率和元素值排序std::sort(freqList.begin(), freqList.end(), compare);// 选择前 K 个元素std::vectorint result;for (int i 0; i k; i) {result.push_back(freqList[i].first);}return result; }int main() {std::vectorint nums { 1, 1, 1, 2, 2, 3 };int k 2;std::vectorint result topKFrequent(nums, k);std::cout The k most frequent elements are: ;for (int num : result) {std::cout num ;}std::cout std::endl;return 0; }输出结果 The 2 most frequent elements are: 1 2 代码仓库地址topKFrequent
http://www.laogonggong.com/news/140587.html

相关文章:

  • 菏泽住房和城乡建设厅网站北京短视频制作公司
  • 长沙网站建设公司联系方式成都市成华区建设局网站
  • 上海魔力网站建设公司网站服务搭建
  • 青岛正规公司网站建设公司北京网站建设有哪些浩森宇特
  • 网站制作毕业设计网站设计的技能
  • 网站开发用到的框架网站怎么做才
  • 网站备案流程详解常德网
  • 如何修改网站logowordpress 维基主题
  • 国内产品推广网站大连做网页工作室
  • 网站制作案例网站建设应具备哪些专业技能
  • 最好的建站网站vmware 下wordpress
  • 生产企业做网站的费用怎么做账网站会员系统模板
  • 一个微信可以做两个网站支付网站建设备案策划书
  • 中国建设会计学网站天津北辰做网站
  • 光谷做网站推广费用moodle做网站
  • 网站建设高等教育出版社工程公司会计账务处理
  • 关于一学一做的短视频网站网站结构 网站内容建设
  • 招商加盟网站建设目的青岛seo网站关键词优化
  • 长春网页制作建站wordpress 律所
  • 做网站开发的提成多少钱坪地网站建设市场
  • 建网站卖产品大良营销网站建设信息
  • 上海网站建设明细报价表哪家好做网站
  • 手机商城网站方案微信公众号小程序助手
  • 西安企业网站建设哪家专业wordpress怎么修改html代码
  • 网站开发和系统开发区别云尚网络科技有限公司搜索排名
  • 科技网站配色用html是做班级简介网站
  • 廊坊商昊网站建设青岛网络推广公司
  • 8免费网站建站制作衣服的软件app
  • 威海网站建设排名榜网站设计佛山
  • 网站开发jsp需要什么jar包网站建设药店