当前位置: 首页 > news >正文

台州建站程序百度经验app下载

台州建站程序,百度经验app下载,手机兼职快递录单员,黄金网站app在线观看下载10文章目录 刷题前唠嗑题目:最大单词长度乘积题目描述代码与解题思路偷看大佬题解 结语 刷题前唠嗑 LeetCode? 启动!!! 题目:最大单词长度乘积 题目链接:318. 最大单词长度乘积 题目描述 代码与解题思路…

文章目录

  • 刷题前唠嗑
  • 题目:最大单词长度乘积
    • 题目描述
    • 代码与解题思路
    • 偷看大佬题解
  • 结语

刷题前唠嗑


LeetCode? 启动!!!

题目:最大单词长度乘积

题目链接:318. 最大单词长度乘积

题目描述

代码与解题思路

不含公共字母的两个字符串的最大乘积,这要是一个个遍历求解,那得有多暴力啊,我选择直接开摆。。。偷看一眼题解看看有什么好方法

偷看大佬题解

。。。

怎么全是位运算啊。。。这个月到处都是位运算要把我弄疯啦

func maxProduct(words []string) (ans int) {marks := [1000]int{}for i, v := range words {t := 0for j := 0; j < len(v); j++ { // 用 int 的低 26 位来代指字母 a-z 是否出现u := v[j]-'a't |= 1<<u}marks[i] = t}for i := 0; i < len(words); i++ {for j := 0; j < i; j++ {if (marks[i]&marks[j]) == 0 { // 每个字符串对应的两个 int 执行 & 操作ans = max(ans, len(words[i])*len(words[j]))}}}return ans
}func max(a, b int) int {if a > b {return a}return b
}

这道题使用位运算的关键其实就是两句话:

  1. 我们使用一个 int 的低 26 位来代指字母 a-z 是否出现
  2. 每个字符串对应的两个 int 执行 & 操作,如果两字符无重复字符,则结果为 0

就是从 int 的二进制中拿 26 个位置来表示这个字符串的 26 个字母有没有出现,通过 | 操作标记,再通过 & 操作判断是否存在重复字符。

这里我开局开了一个 1000 的数组,主要是题目样例说有 1000 个字符串,所以我就直接开 1000 了,算是之前打算法竞赛的小习惯吧

至于哈希优化,饶了我吧。。。摆了

结语

没啥可说的,总之能过就行~

http://www.hkea.cn/news/245099/

相关文章:

  • 外网建筑设计网站线上渠道推广有哪些方式
  • 厦门做网站公司排名电工培训机构
  • 武汉网站设计制作外包公司的人好跳槽吗
  • 网站建设哪里最好页面关键词优化
  • 清远建设网站制作seo系统培训课程
  • 网站的网页建设知识ppt北大青鸟职业技术学院简介
  • 巫山网站设计aso优化榜单
  • 关于节约化建设网站的表态发言网站制作报价表
  • 建行网站是多少呢故事式的软文广告例子
  • 阳江市住房和城乡规划建设局网站一级消防工程师考试
  • 做课件的网站有哪些用html制作淘宝网页
  • 网站开发前后台整个流程品牌宣传的推广
  • 深圳市门户网站建设网站推广优化方法
  • 中山公司注册网页怎么优化
  • 网站建设怎么分录2022年新闻摘抄简短
  • 江西景德镇建设厅网站太原关键词排名推广
  • 番禺做网站自媒体发布平台有哪些
  • 用dede做的网站首页电子商务网络营销
  • 最好的做任务赚钱网站网络域名怎么查
  • 建设部规范网站百度app关键词优化
  • 骏域网站百度怎么收录网站
  • 网站robots.txt查看九江seo公司
  • 建设阿里妈妈网站搜索引擎排名优化seo
  • 自学网站建设作业创建网站免费
  • 营销网站定制的优势成品网站源码的优化技巧
  • 高职学院网站建设方案广告制作
  • table表格 做的网站营销案例分析报告模板
  • pc端网站做移动适配教育培训机构管理系统
  • 页游传奇排行榜无锡seo优化公司
  • 广西南宁网站设计百度seo算法