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

杭州seo网站排名织梦系统怎么做网站

杭州seo网站排名,织梦系统怎么做网站,如何加强网站建设和信息宣传,商城网站不易优化1. 题目链接 LeetCode 面试题 01.01. 判定字符是否唯一 2. 题目描述 实现一个算法,确定一个字符串的所有字符是否全部唯一(即没有重复字符)。要求如下: 不使用额外的数据结构(如哈希表)字符串仅包含小写…
1. 题目链接

LeetCode 面试题 01.01. 判定字符是否唯一


2. 题目描述

实现一个算法,确定一个字符串的所有字符是否全部唯一(即没有重复字符)。要求如下:

  • 不使用额外的数据结构(如哈希表)
  • 字符串仅包含小写字母 a-z

示例

  • 输入:"abc" → 输出:true
  • 输入:"aba" → 输出:false

3. 示例分析
  1. 无重复字符
    • "leetcode"false'e'重复)
    • "abc"true
  2. 边界情况
    • 空字符串 ""true
    • 字符串长度超过 26 → false(26 个小写字母最多只能有 26 个唯一字符)

4. 算法思路

核心思想位图法(Bitmask)

  1. 位图表示
    • 使用一个整数 flag 的二进制位表示字符是否出现过。
    • 每个二进制位对应一个小写字母,例如:
      • a → 第 0 位
      • b → 第 1 位
      • z → 第 25 位
  2. 遍历字符串
    • 若当前字符对应的二进制位为 1,说明已重复,返回 false
    • 否则,将该位设为 1,继续检查下一个字符。

优化点

  • 预判长度超过 26:若字符串长度超过 26,直接返回 false(鸽巢原理)。
  • 时间复杂度:O(n),空间复杂度:O(1)(仅需一个整数)。

5. 边界条件与注意事项
  1. 字符串长度
    • 若长度超过 26,直接返回 false
    • 空字符串直接返回 true
  2. 字符范围
    • 题目假设字符均为小写字母,若存在其他字符(如大写字母或符号),需预处理为小写。
  3. 位运算溢出
    • 移位操作 1 << ii 的范围需为 0~25,否则可能导致整数溢出。

6. 代码实现
class Solution {
public:bool isUnique(string astr) {if (astr.size() > 26) return false; // 鸽巢原理优化int flag = 0; // 位图初始化for (char ch : astr) {int i = ch - 'a'; // 计算字符对应的二进制位if ((flag >> i) & 1) { // 判断该位是否为1return false;}flag |= (1 << i); // 将该位设为1}return true;}
};

与其他方法的对比

方法时间复杂度空间复杂度适用场景
位图法O(n)O(1)仅限小写字母
哈希表法O(n)O(26)所有字符类型
数组计数法O(n)O(26)字符范围明确且较小
暴力枚举法O(n²)O(1)极短字符串(n ≤ 10)

关键代码解析

  1. 位运算检查重复

    if ((flag >> i) & 1) // 判断第i位是否为1
    
    • flag 右移 i 位后,与 1 按位与,结果为 1 则说明该位已被占用。
  2. 位图更新

    flag |= (1 << i); // 将第i位设为1
    
    • 1 左移 i 位后,与 flag 按位或,确保第 i 位被标记为已使用。

总结

位图法通过巧妙的位运算,将空间复杂度降至 O(1),同时保持线性时间复杂度。在面对限定字符范围的问题时(如小写字母、数字等),位图法是最优解之一。其核心在于将字符映射到整数的二进制位上,利用位运算的原子性快速判断重复性。实际应用中,需注意字符范围与整数位数的限制(例如,32 位整数最多覆盖 32 种字符)。


文章转载自:

http://ztliMrcE.skdhm.cn
http://2g8HuJIH.skdhm.cn
http://GVSJs4fc.skdhm.cn
http://cktY6f1q.skdhm.cn
http://u0uyctg8.skdhm.cn
http://CvgR5bxl.skdhm.cn
http://300mmJCs.skdhm.cn
http://zRJo762T.skdhm.cn
http://d7torCU3.skdhm.cn
http://bfYYKXX7.skdhm.cn
http://cp6QegWx.skdhm.cn
http://uEYp34hG.skdhm.cn
http://QarXZIu5.skdhm.cn
http://R3tty22h.skdhm.cn
http://KZ2SA2Qm.skdhm.cn
http://iZ2jHVrX.skdhm.cn
http://QVuCV5PY.skdhm.cn
http://MVKbTu9y.skdhm.cn
http://ZjAH2k9n.skdhm.cn
http://EuVF1mnf.skdhm.cn
http://5I5wk8mm.skdhm.cn
http://dxw2WFZx.skdhm.cn
http://sDFwaPWF.skdhm.cn
http://CAWWm3hz.skdhm.cn
http://EiGt2G4O.skdhm.cn
http://wY4PwFIy.skdhm.cn
http://XgQvr8e6.skdhm.cn
http://osSyuHb8.skdhm.cn
http://xRP0zsay.skdhm.cn
http://xbmq9EsP.skdhm.cn
http://www.dtcms.com/wzjs/650166.html

相关文章:

  • 江苏省建设考试培训网站贵州 网站备案
  • 鹤壁集团网站建设wordpress主题 ansi 换成utf-8 不会显示怎么办呀
  • 建设一个校园网站的可行性铁岭网站建设 258魔站
  • 淮安哪里有做网站的适合个人开网店的平台
  • 建网站需成本多少钱交互做的不好的网站
  • 南宁网站建设公司招聘网页生成app在线
  • 公司网站怎么做备案网站做导航的地图
  • 上线啦 图谱智能网站怎样在网上做推广
  • 北京高端网站公司哪家好女孩学建筑学好找工作吗
  • 手机数据线东莞网站建设技术支持孝义网站建设
  • 平面设计接单的网站北京公司黄页
  • 网站开发无形资产江苏省住房城乡建设厅网站首页
  • 重庆光龙网站建设网站开发有哪些
  • 音乐网站开发参考文献模板王字体网
  • wordpress简约江门网站优化排名
  • 网站关键词优化排名生活做爰网站
  • 网站seo推广员招聘wordpress 修改仪表盘
  • 湖北华路建设工程有限公司网站动漫网站策划书
  • 金泉网做网站多少钱女生学建筑选择什么专业
  • 最新企业网站模板php网站源码建设教程
  • 天津做网站选津坤科技网站网页建设实训心得体会
  • 网站与平台的开发区别百度关键词快速优化
  • 电子商务网站规划报告正规的现货交易平台
  • 嘉兴哪里做网站建设电影网站的目的
  • 宿迁网站推广公司2022推广app赚佣金平台
  • ajax+jsp网站开发从入门到精通手机免费建设网站
  • 旅游网站建设流程北京网站设计制作招聘网
  • 如何创建一个简单的网站公众号登陆
  • 东营网站建设规划书桂林网站艰涩
  • 免费ppt模板 网站开发建设网站一定要数据库吗