给定一个单词列表和两个单词 word1 和 word2,返回列表中这两个单词之间的最短距离。

示例:
假设 words = ["practice", "makes", "perfect", "coding", "makes"]

输入: word1 = “coding”, word2 = “practice”
输出: 3
输入: word1 = "makes", word2 = "coding"
输出: 1
注意:
你可以假设 word1 不等于 word2, 并且 word1 和 word2 都在列表里。

思路:遍歷一遍字符串,记录最后一次出现的位置即可,然后找出差距最小的。

class Solution {public int shortestDistance(String[] words, String word1, String word2) {int i1 = -1, i2 = -1;int minDistance = words.length;for (int i = 0; i < words.length; i++) {if (words[i].equals(word1)) {i1 = i;if (i1 != -1 && i2 != -1 && i1-i2<minDistance)minDistance=i1-i2;} else if (words[i].equals(word2)) {i2 = i;if (i1 != -1 && i2 != -1 && i2-i1<minDistance)minDistance=i2-i1;}}return minDistance;}
}

leetcode243. 最短单词距离(vip题)好像挺简单?相关推荐

  1. LeetCode 244. 最短单词距离 II(哈希map+set二分查找)

    文章目录 1. 题目 2. 解题 2.1 暴力超时 2.2 哈希表+set二分查找 1. 题目 请设计一个类,使该类的构造函数能够接收一个单词列表. 然后再实现一个方法,该方法能够分别接收两个单词 w ...

  2. LeetCode 245. 最短单词距离 III

    文章目录 1. 题目 2. 解题 1. 题目 给定一个单词列表和两个单词 word1 和 word2,返回列表中这两个单词之间的最短距离. word1 和 word2 是有可能相同的,并且它们将分别表 ...

  3. LeetCode 243. 最短单词距离

    文章目录 1. 题目 2. 解题 1. 题目 给定一个单词列表和两个单词 word1 和 word2,返回列表中这两个单词之间的最短距离. 示例: 假设 words = ["practice ...

  4. leetcode217. 存在重复元素(vip题)超简单

    给定一个整数数组,判断是否存在重复元素. 如果任何值在数组中出现至少两次,函数返回 true.如果数组中每个元素都不相同,则返回 false. 示例 1: 输入: [1,2,3,1] 输出: true ...

  5. 程序员面试金典 - 面试题 17.11. 单词距离(multimap平衡二叉搜索树)

    1. 题目 有个内含单词的超大文本文件,给定任意两个单词,找出在这个文件中这两个单词的最短距离(相隔单词数). 如果寻找过程在这个文件中会重复多次,而每次寻找的单词不同,你能对此优化吗? 示例: 输入 ...

  6. 1143:最长最短单词

    [题目描述] 输入1行句子(不多于200个单词,每个单词长度不超过100),只包含字母.空格和逗号.单词由至少一个连续的字母构成,空格和逗号都是单词间的间隔. 试输出第1个最长的单词和第1个最短单词. ...

  7. C/C++语言100题练习计划 98——最长最短单词

    名人说:博学之,审问之,慎思之,明辨之,笃行之.--<中庸> 进度:C/C++语言100题练习计划专栏,目前98/100 一.问题呈现 1.问题描述 Problem Description ...

  8. 【宫水三叶的刷题日记】面试题 17.11. 单词距离

    题目描述 这是 LeetCode 上的 面试题 17.11. 单词距离 ,难度为 中等. Tag : 「模拟」.「双指针」 有个内含单词的超大文本文件,给定任意两个不同的单词,找出在这个文件中这两个单 ...

  9. 两点之间最短的距离并不一定是直线(改变一生财运的五句话)

    第一句话是:优秀是一种习惯. 这句话是古希腊哲学家亚里士多德说的.如果说优秀是一种习惯,那么懒惰也是一种习惯.人出生的时候,除了脾气会因为天性而有所不同,其他的东西基本都是后天形成的,是家庭影响和教育 ...

最新文章

  1. alpine安装启动mysql_在php5-fpm-alpine docker容器中安装php-gd依赖于alpine linux
  2. bogofilter notes
  3. 《NLTK基础教程——用NLTK和Python库构建机器学习应用》——2.3 语句分离器
  4. python脚本运行一段时间后就停止了_CMD运行python程序自动暂停问题解决
  5. javascript乘法和加法_Web前端:JavaScript中的NaN是什么?
  6. Stream流思想和常用方法
  7. 元素不包括_干货 | FDA法规对元素杂质的限度控制及计算方法
  8. Tampermonkey笔记-脚本的搭建和基本使用
  9. Python 同一个类中不同函数相互调用
  10. LevelDB的源码阅读(三) Get操作
  11. 第1章:基本句型及补语
  12. 2. Zigbee应用程序框架开发指南 - 应用程序框架结构
  13. ubuntu18.04安装搜狗输入法之后无法使用的问题
  14. springboot 实现 订单 和 微信扫码支付 功能
  15. vi颜色显示设置(centos7)
  16. 数据库MySQL备份命令,手动备份MySQL数据库
  17. Android Studio制作.9.png图片
  18. mysql事务转账_模拟数据库事务实现转账
  19. [寒江孤叶丶的Cocos2d-x之旅_17]Cocos2d-x 3.2版本以上LUA脚本热更新(动态更新)解决方案
  20. 【GeneXus】在WorkWithPlus中如何定义未被包含的页面属性?

热门文章

  1. gitlab 将管理员权限移交给ldap账户_CDPDC中Atlas集成FreeIPA的LDAP认证
  2. logback日志pattern_@Slf4j 实现日志输入到外部文件
  3. a5d27 第1级bootloader启动问题
  4. 编译libxml2-2.6.26 __open_missing_mode 错误
  5. php设计模式的作用是什么意思,php设计模式工厂模式有什么作用?
  6. usb长包数据结束判断_如何判断南桥好坏 判断南桥好坏方法介绍【详解】
  7. android 中radiogroup滑动切换,巧妙实现缺角radiogroup控制多个fragment切换和滑动
  8. Java 中15种锁的介绍:公平锁,可重入锁,独享锁,互斥锁,乐观锁,分段锁,自旋锁等等
  9. 第十节: 利用SQLServer实现Quartz的持久化和双机热备的集群模式 :
  10. 使用ABP打造SAAS系统(2)——前端框架选择