前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >599. 两个列表的最小索引总和

599. 两个列表的最小索引总和

作者头像
CaesarChang张旭
发布2021-06-10 09:53:49
8620
发布2021-06-10 09:53:49
举报
文章被收录于专栏:悟道

最少的索引和找出他们共同喜爱的餐厅。 如果答案不止一个,则输出所有答案并且不考虑顺序。 你可以假设总是存在一个答案。 输入: ["Shogun", "Tapioca Express", "Burger King", "KFC"] ["Piatti", "The Grill at Torrey Pines", "Hungry Hunter Steakhouse", "Shogun"] 输出: ["Shogun"] 解释: 他们唯一共同喜爱的餐厅是“Shogun”。 示例 2: 输入: ["Shogun", "Tapioca Express", "Burger King", "KFC"] ["KFC", "Shogun", "Burger King"] 输出: ["Shogun"] 解释: 他们共同喜爱且具有最小索引和的餐厅是“Shogun”,它有最小的索引和1(0+1)。

代码语言:javascript
复制
class Solution {
    public String[] findRestaurant(String[] list1, String[] list2) {
        //使用哈希表
        //先找到都喜欢的
        HashMap<Integer,List<String> > map=new HashMap();  //当前索引之和, 共同的字符串
        for(int i=0;i<list1.length;i++){

            for(int j=0;j<list2.length;j++){
                if(list1[i].equals(list2[j])){
                    //如果他两个一样, 而且map里面没有  就放进去
                    if(!map.containsKey((i+j))){
                        map.put(i+j,new ArrayList<String>());
                       
                    }
                     map.get(i+j).add(list1[i]);
                }
            }
        }
        //找出最小的key
        int min=Integer.MAX_VALUE;
        for(int key: map.keySet()){
            min=Math.min(min,key);
        }
        String [] res=new String[map.get(min).size()];
        return map.get(min).toArray(res);
    }
}

有个数组的话可以 toList();

String [] str=new String[2];

有个集合的话可以toArray(str);

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/06/04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档