Leetcode 318.最大单词长度乘积
2024-09-06 07:38:33
最大单词长度乘积
给定一个字符串数组 words,找到 length(word[i]) * length(word[j]) 的最大值,并且这两个单词不含有公共字母。你可以认为每个单词只包含小写字母。如果不存在这样的两个单词,返回 0。
示例 1:
输入: ["abcw","baz","foo","bar","xtfn","abcdef"]
输出: 16
解释: 这两个单词为"abcw", "xtfn"。
示例 2:
输入: ["a","ab","abc","d","cd","bcd","abcd"]
输出: 4
解释: 这两个单词为 "ab", "cd"。
示例 3:
输入: ["a","aa","aaa","aaaa"]
输出: 0
解释: 不存在这样的两个单词。
使用比特进行哈希。
public class Solution {
public int maxProduct(String[] words) {
int[] f = new int[words.length];
for(int i=0; i<words.length; i++) {
char[] wa = words[i].toCharArray();
for(int j=0; j<wa.length; j++) {
f[i] |= 1 << (wa[j]-'a');
}
}
int max = 0;
for(int i=0; i<words.length-1; i++) {
for(int j=i+1; j<words.length; j++) {
if ((f[i] & f[j]) == 0) max = Math.max(max, words[i].length() * words[j].length());
}
}
return max;
}
}
最新文章
- Tortoise SVN Clean up失败的解决方法
- css-布局1-基本属性
- VB生成xml
- loadrunner controller:设置多个load generator
- JavaScript的兼容
- JavaEE HttpServlet 解析
- 使用ASP.NET SignalR实现一个简单的聊天室
- Electron学习笔记(一)
- python的GIL
- 稀疏矩阵 part 1
- 【Boost】boost::string_algo详解2——find相关函数
- CRF++安装,提示libstdc++.so.6: version `GLIBCXX_3.4.20&#39; not found解决
- 3.1 vue组件的使用
- MySql union与order by
- CAS单点登录安装笔记
- Oracle数据库中 to_date()与24小时制表示法及mm分钟的显示
- 28.OGNL与ValueStack(VS)-总结$ # %的区别
- MySQL面试宝典
- the resource is not on the build path of a php project
- 【转】NHIBERNATE的各种保存方式的区别 (SAVE,PERSIST,UPDATE,SAVEORUPDTE,MERGE,FLUSH,LOCK)
热门文章
- oozie.log报提示:org.apache.oozie.service.ServiceException: E0104错误 An Admin needs to install the sharelib with oozie-setup.sh and issue the &#39;oozie admin&#39; CLI command to update sharelib
- Python 版本对比
- OpenGL 透视投影推导图解
- Android图片压缩上传(二)
- 推荐一个高大上的网易云音乐命令行播放工具:musicbox
- 三星系列NXP系列核心板设计研发-迅为嵌入式ARM方案提供商
- About the iOS File System
- liunx 修改IP地址
- finger - 用户信息查找程序
- flex布局以及相关属性