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

网站虚拟机从头做有影响吗网站外链分析工具

网站虚拟机从头做有影响吗,网站外链分析工具,wordpress模板结构详解,智联招聘网站可以做两份简历吗文章目录 前言LeetCode、1268. 搜索推荐系统【中等,前缀树优先队列、排序前缀匹配】题目类型及分类思路API调用(排序前缀匹配)前缀树优先队列 资料获取 前言 博主介绍:✌目前全网粉丝2W,csdn博客专家、Java领域优质创…

文章目录

  • 前言
  • LeetCode、1268. 搜索推荐系统【中等,前缀树+优先队列、排序+前缀匹配】
    • 题目类型及分类
    • 思路
      • API调用(排序+前缀匹配)
      • 前缀树+优先队列
  • 资料获取

前言

博主介绍:✌目前全网粉丝2W+,csdn博客专家、Java领域优质创作者,博客之星、阿里云平台优质作者、专注于Java后端技术领域。

涵盖技术内容:Java后端、算法、分布式微服务、中间件、前端、运维、ROS等。

博主所有博客文件目录索引:博客目录索引(持续更新)

视频平台:b站-Coder长路


LeetCode、1268. 搜索推荐系统【中等,前缀树+优先队列、排序+前缀匹配】

题目类型及分类

题目链接:LeetCode、1268. 搜索推荐系统

分类:02数据结构/树/字典树(前缀树)


思路

API调用(排序+前缀匹配)

复杂度分析:时间复杂度O(n.logn);空间复杂度O(n)

class Solution {//prodcuts数量2万  单词1000public List<List<String>> suggestedProducts(String[] products, String searchWord) {//根据字典序排序Arrays.sort(products);//初始化结果集合List<List<String>> ans = new ArrayList<>();//遍历所有的搜索文字for (int i = 0; i < searchWord.length(); i ++) {String s = searchWord.substring(0, i + 1);//结果集合List<String> res = new ArrayList<>();//遍历所有productsfor (String product: products) {if (product.startsWith(s)) {res.add(product);}//若是已经收集到3个if (res.size() == 3) {break;}}ans.add(res);}return ans;}
}

image-20240213102700642


前缀树+优先队列

使用大顶堆目的:每个单词只留下3个最小字典序的,因为一旦大顶堆中有>目标数量时,就会将最大的排除出去。

image-20240213125607217

复杂度分析:时间复杂度O(n);空间复杂度O(n)

class Solution {//每一个大顶堆中的数量为3private static final int size = 3;//根节点private TrieNode root = new TrieNode();//自定义Node节点class TrieNode {public static final int num = 26;TrieNode[] children;boolean isEnd;PriorityQueue<String> queue;public TrieNode() {this.children = new TrieNode[num];this.queue = new PriorityQueue<>((o1,o2)->o2.compareTo(o1));}}//插入一个产品名称到前缀树public void insert(String product) {//拿到当前的前缀树节点TrieNode node = this.root;//遍历整个名称字符for (char ch: product.toCharArray()) {int index = ch - 'a';if (node.children[index] == null) {node.children[index] = new TrieNode();}node = node.children[index];//当前节点要将单词添加进来node.queue.offer(product);if (node.queue.size() > size) {node.queue.poll();}}node.isEnd = true;}public List<List<String>> suggestedProducts(String[] products, String searchWord) {List<List<String>> ans = new ArrayList<>();//遍历所有的商品名称,依次添加到前缀树中for (String product: products) {insert(product);}//搜索所有的匹配结果TrieNode node = this.root;for (char ch: searchWord.toCharArray()) {int index = ch - 'a';//临时保存一个集合List<String> tmp = new ArrayList<>();            if (node == null) {ans.add(tmp);continue;}node = node.children[index];//节点不为空情况while (node != null && !node.queue.isEmpty()) {tmp.add(node.queue.poll());}//将整个集合翻转Collections.reverse(tmp);//添加到最终的结果集合中ans.add(tmp);}return ans;}}

image-20240213125625106


资料获取

大家点赞、收藏、关注、评论啦~

精彩专栏推荐订阅:在下方专栏👇🏻

  • 长路-文章目录汇总(算法、后端Java、前端、运维技术导航):博主所有博客导航索引汇总
  • 开源项目Studio-Vue—校园工作室管理系统(含前后台,SpringBoot+Vue):博主个人独立项目,包含详细部署上线视频,已开源
  • 学习与生活-专栏:可以了解博主的学习历程
  • 算法专栏:算法收录

更多博客与资料可查看👇🏻获取联系方式👇🏻,🍅文末获取开发资源及更多资源博客获取🍅


整理者:长路 时间:2024.2.13

http://www.khdw.cn/news/48831.html

相关文章:

  • 钓鱼网站百度关键词推广教程
  • wordpress站点地址写错怎么让网站被百度收录
  • 合肥网站开发需要地推的60种方法
  • 有什么网站可以自己做书查询关键词
  • 素材网站视频找关键词的三种方法
  • 时时彩网站制作市场调查报告模板及范文
  • 江西网站开发公司企业网站制作价格
  • 做js链接的网站要加证书吗网站服务器
  • 安溪哪里有学做网站免费b站推广网站2023
  • 乌鲁木齐做网站哪家好seo公司多少钱
  • 广州日新增51万人如何进行seo
  • 重庆建站模板展示百度信息流投放在哪些平台
  • 域名转让交易平台站长工具seo综合查询推广
  • 阿里云 发布网站 教程seo研究中心教程
  • 网站的特征包括哪些google官网注册账号入口
  • 网站建设 项目背景哪里做网站便宜
  • 注册公司法人年龄要求南宁seo内部优化
  • 榆林微网站建设专门培训seo的网站
  • 产品推广有哪些平台搜索引擎优化策略不包括
  • 中小学图书馆网站建设苏州seo按天扣费
  • 北京知名网站建设公司百度助手app下载
  • 溧阳网站定制百度关键词搜索怎么弄
  • 网站做备案需要多久石家庄seo网络推广
  • 有什么字体设计的网站媒体资源网官网
  • 电子商务网站系统的开发设计沧州网站建设推广
  • 做网站用什么cms 知乎二十条优化疫情措施
  • 东莞网站建设服务广东队对阵广州队
  • wordpress里的关键词在哪设置百度seo 优化
  • 开发个网站开票名称是什么重庆seo关键词优化服务
  • 昆明网络公司网站网络营销方法和手段