【LeetCode刷题】--244.最短单词距离II

news/2025/2/23 2:13:22/

244.最短单词距离II

image-20231220203628672

方法:哈希表+双指针

class WordDistance {HashMap<String,List<Integer>> map = new HashMap<>();public WordDistance(String[] wordsDict) {int len = wordsDict.length;for(int i =0;i< len;i++){String word = wordsDict[i];if(!map.containsKey(word)){map.put(word,new ArrayList<>());}map.get(word).add(i);}}public int shortest(String word1, String word2) {List<Integer> map1 = map.get(word1);List<Integer> map2 = map.get(word2);int size1 = map1.size(),size2 = map2.size();int pos1 = 0,pos2 = 0;int ans = Integer.MAX_VALUE;while(pos1 < size1 && pos2 < size2){int index1 = map1.get(pos1),index2 = map2.get(pos2);ans = Math.min(ans,Math.abs(index1-index2));if(index1 < index2){pos1++;}else{pos2++;}}return ans;}
}/*** Your WordDistance object will be instantiated and called as such:* WordDistance obj = new WordDistance(wordsDict);* int param_1 = obj.shortest(word1,word2);*/

http://www.ppmy.cn/news/1276643.html

相关文章

关于Python里xlwings库对Excel表格的操作(十五)

这篇小笔记主要记录如何【获取单元格数据的对齐方式或更改单元格数据的对齐方式】。 前面的小笔记已整理成目录&#xff0c;可点链接去目录寻找所需更方便。 【目录部分内容如下】【点击此处可进入目录】 &#xff08;1&#xff09;如何安装导入xlwings库&#xff1b; &#xf…

测试:传输协议

HTTP HTTP&#xff08;超文本传输协议&#xff0c;Hypertext Transfer Protocol&#xff09;是一种用于传输超文本的协议&#xff0c;它是Web的基础。HTTP协议定义了客户端和服务器之间交换信息的规则&#xff0c;它是一种无状态的协议&#xff0c;即每次请求和响应之间都是相…

HBase 整合 Phoenix

目录 一、Phoenix 简介 1.1 Phoenix定义 1.2 为什么使用 Phoenix 二、Phoenix 快速入门 2.1 安装部署 Phoenix 2.1.1 上传并解压 tar 包 2.1.2 复制 server 包并拷贝到各个节点的 hbase/lib 2.1.3 配置环境变量 2.1.4 重启 HBase 2.1.5 连接 Phoenix 2.2 Phoenix…

WT588F34B-16S语音芯片:模拟DAC输出与外接功放的应用优势

随着科技的飞速发展&#xff0c;语音芯片在电子产品中的应用越来越广泛。其中&#xff0c;WT588F34B-16S语音芯片凭借其卓越的性能和创新的功能&#xff0c;引起了市场的广泛关注。特别是其支持模拟DAC输出以及可外接功放的功能&#xff0c;为实际应用带来了显著的优势。本文将…

@德人合科技——天锐绿盾 | 图纸加密软件有哪些功能呢?

德人合科技 | 天锐绿盾加密软件是一款全面保障企业电脑数据和安全使用的加密软件 PC端访问地址&#xff1a;www.drhchina.com 它的功能包括但不限于&#xff1a; 实时操作日志&#xff1a;可以实时详细地记录所有终端的操作日志&#xff0c;包括终端上窗口标题的变换、程序的…

数据库故障Waiting for table metadata lock

场景&#xff1a;早上来发现一个程序&#xff0c;链接mysql数据库有点问题&#xff0c;随后排查&#xff0c;因为容器在k8s里面。所以尝试重启了pod没有效果 一、重启pod: 这里是几种在Kubernetes中重启Pod的方法: 删除Pod,利用Deployment重建 kubectl delete pod mypodDepl…

UE4 UE5 一直面向屏幕

一直面相屏幕&#xff0c;方法很简单 新建一个蓝图&#xff0c;如下添加组件&#xff1a; 蓝图如下&#xff1a; Rotation Actor &#xff1a;需要跟随镜头旋转的物体 Update&#xff1a;一个timeline&#xff08;替代event tick 只是为了循环&#xff09; Timeline&#xff…

听GPT 讲Rust源代码--src/tools(15)

File: rust/src/tools/rust-analyzer/crates/mbe/src/token_map.rs 在Rust源代码中&#xff0c;rust/src/tools/rust-analyzer/crates/mbe/src/token_map.rs文件的作用是实现了一个能够将输入的文本映射为标记的结构。具体来说&#xff0c;它定义和实现了几个结构体&#xff08…