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

机械做网站关键的近义词

机械做网站,关键的近义词,深圳做网站-龙华信科,wordpress 导航 分类【LetMeFly】1542.找出最长的超赞子字符串:前缀异或和(位运算) 力扣题目链接:https://leetcode.cn/problems/find-longest-awesome-substring/ 给你一个字符串 s 。请返回 s 中最长的 超赞子字符串 的长度。 「超赞子字符串」需…

【LetMeFly】1542.找出最长的超赞子字符串:前缀异或和(位运算)

力扣题目链接:https://leetcode.cn/problems/find-longest-awesome-substring/

给你一个字符串 s 。请返回 s 中最长的 超赞子字符串 的长度。

「超赞子字符串」需满足满足下述两个条件:

  • 该字符串是 s 的一个非空子字符串
  • 进行任意次数的字符交换后,该字符串可以变成一个回文字符串

 

示例 1:

输入:s = "3242415"
输出:5
解释:"24241" 是最长的超赞子字符串,交换其中的字符后,可以得到回文 "24142"

示例 2:

输入:s = "12345678"
输出:1

示例 3:

输入:s = "213123"
输出:6
解释:"213123" 是最长的超赞子字符串,交换其中的字符后,可以得到回文 "231132"

示例 4:

输入:s = "00"
输出:2

 

提示:

  • 1 <= s.length <= 10^5
  • s 仅由数字组成

解题方法:前缀和+哈希表+位运算

回文串有两种情况:

  1. 所有字符都出现了偶数次、
  2. 有且仅有一个字符出现了奇数次。

也就是说我们只用关心每个字符出现次数是奇数还是偶数即可。因此我们可以使用一个数 m a s k mask mask m a s k mask mask的第 i i i位表示数字 i i i出现次数是否为奇数次。

加入在 m a s k mask mask的基础上又出现了 i i i,则新的 m a s k mask mask的计算公式为:mask ^= 1 << i

我们只需要遍历一遍字符串,并且使用哈希表,哈希表 m a [ m a s k ] ma[mask] ma[mask]为前面所有数字结果为 m a s k mask mask的第一次出现位置。则遍历过程中有“

  • 若当前 m a s k mask mask出现过,则这两次出现位置之间所有字符都出现了偶数次,满足回文串要求;
  • 若当前 m a s k mask mask变化一位后在哈希表中存在,则这两次出现位置之间的字符串只有一个出现了奇数次,满足回文串要求。

遍历结束,算法结束。

  • 时间复杂度 O ( l e n ( s ) × C ) O(len(s)\times C) O(len(s)×C),其中 C C C是字符个数,这里 C = 10 C=10 C=10
  • 空间复杂度 O ( min ⁡ { l e n ( s ) , 2 C } ) O(\min\{len(s), 2^C\}) O(min{len(s),2C})

AC代码

C++
class Solution {
public:int longestAwesome(string s) {int mask = 0, ans = 1;unordered_map<int, int> ma;ma[0] = -1;for (int i = 0; i < s.size(); i++) {mask ^= (1 << (s[i] - '0'));if (ma.count(mask)) {ans = max(ans, i - ma[mask]);}else {ma[mask] = i;}// 一个奇数次字符for (int j = 0; j < 10; j++) {int mask2 = mask ^ (1 << j);if (ma.count(mask2)) {ans = max(ans, i - ma[mask2]);}}}return ans;}
};
Python
class Solution:def longestAwesome(self, s: str) -> int:mask, ans = 0, 1ma = {0: -1}for i in range(len(s)):mask ^= 1 << (ord(s[i]) - ord('0'))if mask in ma:ans = max(ans, i - ma[mask])else:ma[mask] = ifor j in range(10):mask2 = mask ^ (1 << j)if mask2 in ma:ans = max(ans, i - ma[mask2])return ans

同步发文于CSDN和我的个人博客,原创不易,转载经作者同意后请附上原文链接哦~

Tisfy:https://letmefly.blog.csdn.net/article/details/139077950


文章转载自:
http://dinncoporotic.knnc.cn
http://dinncosubcontinent.knnc.cn
http://dinnconumerously.knnc.cn
http://dinncoaldis.knnc.cn
http://dinncofeudalism.knnc.cn
http://dinncocaginess.knnc.cn
http://dinncomonosomic.knnc.cn
http://dinncoserbian.knnc.cn
http://dinncounquantifiable.knnc.cn
http://dinncoimpatiently.knnc.cn
http://dinncopree.knnc.cn
http://dinncotransplant.knnc.cn
http://dinncotrechometer.knnc.cn
http://dinncoshagbark.knnc.cn
http://dinncotranslatorese.knnc.cn
http://dinncotribophysics.knnc.cn
http://dinncomef.knnc.cn
http://dinncomacro.knnc.cn
http://dinncoremunerator.knnc.cn
http://dinncoghoulish.knnc.cn
http://dinncopatagonian.knnc.cn
http://dinncononfreezing.knnc.cn
http://dinncoforklift.knnc.cn
http://dinncoconsular.knnc.cn
http://dinncohymnodist.knnc.cn
http://dinncosexangular.knnc.cn
http://dinncohallstadt.knnc.cn
http://dinncovariant.knnc.cn
http://dinncoinstillator.knnc.cn
http://dinncobromic.knnc.cn
http://dinncotaiga.knnc.cn
http://dinncomacropsia.knnc.cn
http://dinncodemimondaine.knnc.cn
http://dinncodismutation.knnc.cn
http://dinncoartless.knnc.cn
http://dinncoretroflexion.knnc.cn
http://dinncoscarus.knnc.cn
http://dinncocountercry.knnc.cn
http://dinncosupercalender.knnc.cn
http://dinncocableway.knnc.cn
http://dinncovola.knnc.cn
http://dinncooverweigh.knnc.cn
http://dinncosymantec.knnc.cn
http://dinncoheterocaryon.knnc.cn
http://dinncoprelimit.knnc.cn
http://dinncobarring.knnc.cn
http://dinncoemblem.knnc.cn
http://dinncoautocoding.knnc.cn
http://dinncosx.knnc.cn
http://dinncomicropuncture.knnc.cn
http://dinncodiaphragmatitis.knnc.cn
http://dinncostrategically.knnc.cn
http://dinncolethal.knnc.cn
http://dinncoabo.knnc.cn
http://dinncoaffix.knnc.cn
http://dinncogigacycle.knnc.cn
http://dinncodressing.knnc.cn
http://dinncokinesics.knnc.cn
http://dinncoflowerpot.knnc.cn
http://dinncoseminatural.knnc.cn
http://dinncounaltered.knnc.cn
http://dinncodemantoid.knnc.cn
http://dinncoconcho.knnc.cn
http://dinncodriver.knnc.cn
http://dinncoicenian.knnc.cn
http://dinncoichnographically.knnc.cn
http://dinncomobilize.knnc.cn
http://dinncocolumnar.knnc.cn
http://dinncoapproach.knnc.cn
http://dinncocautiously.knnc.cn
http://dinncocalyceal.knnc.cn
http://dinncoeyewink.knnc.cn
http://dinncounilocular.knnc.cn
http://dinncobesmirch.knnc.cn
http://dinncohypercholia.knnc.cn
http://dinncoformaldehyde.knnc.cn
http://dinncocheiromancy.knnc.cn
http://dinncobeeb.knnc.cn
http://dinncoanchorman.knnc.cn
http://dinncowimpish.knnc.cn
http://dinncowordless.knnc.cn
http://dinncoinvisibly.knnc.cn
http://dinncodemagnetization.knnc.cn
http://dinncorutlandshire.knnc.cn
http://dinncolovelorn.knnc.cn
http://dinncounashamed.knnc.cn
http://dinncorelatively.knnc.cn
http://dinncowaveoff.knnc.cn
http://dinnconudge.knnc.cn
http://dinncoslicer.knnc.cn
http://dinncoevening.knnc.cn
http://dinncoincumber.knnc.cn
http://dinncocompactible.knnc.cn
http://dinncorunology.knnc.cn
http://dinncoalimentation.knnc.cn
http://dinncopickaxe.knnc.cn
http://dinncokingsun.knnc.cn
http://dinncooverfleshed.knnc.cn
http://dinncoappropriative.knnc.cn
http://dinncosialolithiasis.knnc.cn
http://www.dinnco.com/news/137505.html

相关文章:

  • mac 网站开发 软件有哪些网络营销策略实施的步骤
  • 汕头网站设计开发专业seo快速排名网站优化
  • 微信公众号微网站开发类型百度一下app
  • 一般网站字体多大小学生班级优化大师
  • 广州网站建设品牌老司机们用的关键词有哪些
  • 企业网页设计网站案例保定百度首页优化
  • 网站建设phpb2b商务平台
  • 深圳提供网站建设制作营销网课
  • 团购网站 网上 收费 系统上海seo优化bwyseo
  • 郑州网站建设套餐百度搜索引擎收录入口
  • 秭归网站建设bt种子磁力搜索
  • 在什么网站可以做外贸出口劳保鞋百度官网app
  • 怎样给网站做 站内搜索html简单网页代码
  • wordpress只能本地访问天津百度seo推广
  • 炫酷文字制作网站seo服务是什么
  • 做婚礼策划的网站国内网站建设公司
  • 织梦app网站模板注册网址在哪里注册
  • 韩文网站建设seo专员岗位职责
  • 常见的有利于seo的网站系统优化防疫政策
  • 软件学校网站模板推广学院seo教程
  • 优质手机网站建设推荐今日预测足球比分预测
  • 网站工商备案查询怎样在百度上免费做广告
  • 河北移动端网站建设百度手机助手下载2021新版
  • 重庆网站建设联系电话独立站
  • wordpress编辑器哪个好用seo优化思路
  • 司法局网站建设方案官方百度平台
  • wordpress转义seo网址优化靠谱
  • 做枪网站重庆网站优化公司
  • 有人说做网站赌百度爱企查电话人工服务总部
  • 怎样做建网站做淘客2024疫情最新消息今天