【LeetCode:318. 最大单词长度乘积 | 模拟 位运算】

news2024/11/26 4:34:01

在这里插入图片描述

🚀 算法题 🚀

🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀
🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨
🌲 作者简介:硕风和炜,CSDN-Java领域新星创作者🏆,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享💎💎💎
🌲 恭喜你发现一枚宝藏博主,赶快收入囊中吧🌻
🌲 人生如棋,我愿为卒,行动虽慢,可谁曾见我后退一步?🎯🎯

🚀 算法题 🚀

在这里插入图片描述

在这里插入图片描述

🍔 目录

    • 🚩 题目链接
    • ⛲ 题目描述
    • 🌟 求解思路&实现代码&运行结果
      • ⚡ 模拟 & 位运算
        • 🥦 求解思路
        • 🥦 实现代码
        • 🥦 运行结果
    • 💬 共勉

🚩 题目链接

  • 318. 最大单词长度乘积

⛲ 题目描述

给你一个字符串数组 words ,找出并返回 length(words[i]) * length(words[j]) 的最大值,并且这两个单词不含有公共字母。如果不存在这样的两个单词,返回 0 。

示例 1:

输入:words = [“abcw”,“baz”,“foo”,“bar”,“xtfn”,“abcdef”]
输出:16
解释:这两个单词为 “abcw”, “xtfn”。
示例 2:

输入:words = [“a”,“ab”,“abc”,“d”,“cd”,“bcd”,“abcd”]
输出:4
解释:这两个单词为 “ab”, “cd”。
示例 3:

输入:words = [“a”,“aa”,“aaa”,“aaaa”]
输出:0
解释:不存在这样的两个单词。

提示:

2 <= words.length <= 1000
1 <= words[i].length <= 1000
words[i] 仅包含小写字母

🌟 求解思路&实现代码&运行结果


⚡ 模拟 & 位运算

🥦 求解思路
  1. 通过题目的意思,我们可以知道,题目让我们求解的是找到俩个互不相同的字符串长度的最大乘积的结果。
  2. 首先,我们可以通过暴力模拟的方法去尝试,显然,题目给定的数据量不会让我们通过,但是,我们可以基于此进行后续的改进。
  3. 具体怎么改进呢?我们可以使用位运算的方法,对给定的字符串数组进行预处理的方式,说的更直接明白一些,就是挨个遍历每个字符串的字符,将其映射到int类型对应的二进制位置上。
  4. 最后,判断第 i个单词和第 j个单词是否有公共字母可以通过判断 arr[i] & arr[j]是否等于0实现,当且仅当 arr[i] & arr[j]=0时第 i个单词和第 j个单词没有公共字母,此时使用这两个单词的长度乘积更新最大单词长度乘积。
  5. 实现代码如下。
🥦 实现代码
class Solution {
    public int maxProduct(String[] words) {
        int max=0;
        int n=words.length;
        int[] arr=new int[n];
        for(int i=0;i<n;i++){
            char[] c=words[i].toCharArray();
            for(int j=0;j<c.length;j++){
                arr[i]|=1<<(c[j]-'a');
            }
        }
        for(int i=0;i<n;i++){
            for(int j=i+1;j<n;j++){
                if((arr[i]&arr[j])==0){
                    max=Math.max(max,words[i].length()*words[j].length());
                }
            }
        }
        return max;
    }
}
🥦 运行结果

在这里插入图片描述


💬 共勉

最后,我想和大家分享一句一直激励我的座右铭,希望可以与大家共勉!

在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1175957.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CRM软件如何高效培育销售线索?

​ 通过线索培育可以挖掘出更多CRM软件销售管道中的有价值客户提高销售业绩。但机遇与挑战总是共存的&#xff0c;培育线索要从不同的渠道执行大量重复性的操作&#xff0c;人为操控不仅速度慢而且容易出错&#xff0c;那么企业如何高效培育销售线索? 发送个性化邮件 我们知…

YOLO目标检测——汽车头部尾部检测数据集【含对应voc、coco和yolo三种格式标签】

实际项目应用&#xff1a;用于训练自动驾驶系统中的车辆感知模块&#xff0c;以实现对周围车辆头部和尾部的准确检测和识别数据集说明&#xff1a;汽车头部尾部检测数据集&#xff0c;真实场景的高质量图片数据&#xff0c;数据场景丰富标签说明&#xff1a;使用lableimg标注软…

随机森林在生物信息中的应用

今天与大家分享一项强大的机器学习算法随机森林。这个算法不仅在数据科学领域广泛应用&#xff0c;还在生物信息学中发挥了巨大的作用。 让我们一起探索随机森林的原理、优缺点以及它在生物信息领域的实际应用场景&#xff0c;本文将给出R语言进行应用的实际方法&#xff0c;利…

数据采集卡如何选型?

数据采集卡如何选型? 一、 确认采集任务二、 选择合适的传感器三、采样频率、分辨率、总线类型、量程等关键参数选择 一、 确认采集任务 二、 选择合适的传感器 三、采样频率、分辨率、总线类型、量程等关键参数选择 第1步&#xff1a;确认采集任务&#xff0c;电压&#x…

产业园区中工业厂房的能源综合配置——工业园区综合能源数字化系统建设方案

以下内容转自微信公众号&#xff1a;PPP产业大讲堂&#xff0c;《产业园区中工业厂房的能源综合配置》。 园区工业地产中能源综合配置存在的问题 我国园区工业地产建设已历经近40年的发展, 园区在区域经济发展、产业集聚方面发挥了重要的载体和平台作用, 有力推动了我国社会经…

未来商业趋势:无人奶柜的无限潜力

未来商业趋势&#xff1a;无人奶柜的无限潜力 随着自动售货机的普及和公共场所需求的多样化&#xff0c;无人奶柜作为一种新兴的自动售货机&#xff0c;开始出现在学校、医院、办公楼、商场等公共场所&#xff0c;为人们提供便捷、低成本的饮品购买服务。 这种无人奶柜不仅可以…

windows 11渗透测试工具箱

系统简介 本环境旨在提供一个开箱即用的windows渗透测试环境&#xff1b;建议运行环境&#xff1a;【vmware&#xff1a;17.0 】 /【运行内存&#xff1a;8G】 /【固态硬盘&#xff1a;100G】 Windows11 Penetration Suite Toolkit v2.2 (WSL) 【推荐】 下载链接&#xff1a;h…

Leetcode-448 找到数组中消失的数字

原理&#xff1a;每个num[i]对应一个数组下标&#xff0c;对所有num[i]下标对应的数变负以后&#xff0c;没有变负的数没有下表对应&#xff0c;这个下标对应的数就缺失&#xff08;好难想&#xff09;。把数组下标当成一个有序数列用&#xff0c;数组里面的元素正负性对数列标…

AI:61-基于深度学习的草莓病害识别

🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌在这个漫长的过程,中途遇到了不少问题,但是…

ClickHouse开发系列

一、 ClickHouse详解、安装教程_clickhouse源码安装 二、ClickHouse 语法详解_clickhouse讲解 三、ClickHouse SQL 操作语句详解 四、ClickHouse 高级教程—官方原版 五、ClickHouse主键索引最佳实践 六、MySQL与ClickHouse集成 七、ClickHouse 集成MongoDB、Re…

如何通过一条数字人三维动画宣传片,打造出数字文旅

越来越多虚拟人&#xff0c;以文化挖掘者的身份通过数字人三维动画宣传片&#xff0c;打通次元壁&#xff0c;助力文化传播形式创造性转化、创新性表达&#xff0c;赋予文化发展新动能。 如南方都市报民间博物馆文化探寻者“岭梅香”&#xff0c;由一艘在南宋时期失事的沉船“南…

基于原子轨道搜索算法的无人机航迹规划-附代码

基于原子轨道搜索算法的无人机航迹规划 文章目录 基于原子轨道搜索算法的无人机航迹规划1.原子轨道搜索搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要&#xff1a;本文主要介绍利用原子轨道搜索算法来优化无…

干货满满,mac屏幕录制实用教程!

在当今科技飞速发展的时代&#xff0c;屏幕录制已经成为了人们日常生活中经常使用的功能&#xff0c;无论是工作还是生活&#xff0c;我们都需要使用到屏幕录制软件来捕捉屏幕上的内容。mac作为苹果公司开发的操作系统&#xff0c;拥有许多内置的屏幕录制工具。本文将详细介绍两…

录屏有声音吗?解答你的疑惑

录屏是我们在工作和生活中经常遇到的需求&#xff0c;有时候我们需要记录下屏幕的操作或展示给别人看。然而&#xff0c;很多人在录屏的时候都会遇到一个问题&#xff1a;录制的视频没有声音。那么&#xff0c;录屏有声音吗&#xff1f;答案是肯定的。在本文中&#xff0c;我们…

关于还看视频对讲没有效果而且不会报错 的解决方法

1. 海康初步引入 这里我用的是海康h5player 介入海康视频参考 https://www.maxssl.com/article/22480/ 这里如果需要需要对讲功能 这里不仅需要引入h5player.js 还需要将talk和talkW文件夹一并引入 2.项目需求 在我的项目中需求是 在地图中展示点位,点击点位开启视频 并有对…

Linux操作系统中软件安装来了

在系统中&#xff0c;应用软件是必不可少的&#xff0c;比如一些社交软件&#xff0c;影音娱乐软件&#xff0c;那么我们Windows中安装软件方法主要有两种&#xff1a;第一种是从网站上下载安装包&#xff0c;双击打开安装包后按照提示一步步操作完成安装&#xff1b;第二种是从…

【SpringBoot篇】SpringBoot整合Mybatis实战

&#x1f38a;专栏【SpringBoot】 &#x1f354;喜欢的诗句&#xff1a;天行健&#xff0c;君子以自强不息。 &#x1f386;音乐分享【如愿】 &#x1f384;欢迎并且感谢大家指出小吉的问题&#x1f970; 文章目录 &#x1f33a;Spring Boot和MyBatis的好处&#x1f33a;创建工…

芯片制造中如何测薄膜厚度?

在半导体制造业中&#xff0c;薄膜的厚度对器件的性能和质量有重要影响。薄膜的厚度决定了许多重要的物理和化学性质&#xff0c;对其折射、反射和透射的光学性质有直接影响&#xff0c;可以导致显著的量子尺寸效应&#xff0c;从而改变材料的电子、光学和磁性等。准确测量和控…

谈京东电商API接口的应用场景及返回值说明(获取商品详情,SKU,desc)

1 背景 京东作为电商平台&#xff0c;近几年用户、业务持续增长&#xff0c;访问量持续上升&#xff0c;随着这些业务的发展&#xff0c;京东API接口应运而生。 API接口&#xff0c;就是为了解放客户端与服务端而存在的。对于客户端&#xff0c;使开放给客户端的接口标准统一…

SI24R1兼容NORDIC通信开发资料

一、友商的nRF24L01不要求芯片底部的金属焊盘接地&#xff0c;Si24R1规格书上也没要求接地&#xff0c;这是因为发射功率较低只有0dbm的情况&#xff0c;当芯片发射功率大于0dbm以后&#xff0c;芯片底部的金属焊盘会有很多白噪声耦合到地&#xff0c;而nRF24L01的参考设计金属…