优选算法——位运算(1):判定字符是否唯一

优选算法——位运算(1):判定字符是否唯一
示例图

🔥近津薪荼: [个人主页]🎬个人专栏: 《近津薪荼的算法日迹》《Linux操作系统及网络基础知识分享》《c++基础知识详解》《c语言基础知识详解》✨不要物化,矮化,弱化,钝化自己,保持锋芒,不要停止学习这个世界上只有两个人真正在注意着你八岁的你,和八十岁的你,他们此刻正在注视着你,一个希望你 勇敢开始,一个希望你 不留遗憾


1.上期参考代码

classSolution{public:intfindMaxLength(vector<int>& nums){ unordered_map<int,int>hash; hash[0]=-1;int sum=0,ret=0;for(int i=0;i<nums.size();i++){if(!nums[i])nums[i]=-1; sum+=nums[i];if(hash.count(sum))ret=max(ret,i-hash[sum]);//判断sum是否存在else hash[sum]=i;}return ret;}};

2.本期知识点导图

3.本期要讲解的题目是

判定字符是否唯一

要点:

  • 只有小写字母

4.解题

4.1 使用数据结构

使用哈希表hash[26]来统计字母出现的次数。

4.2使用位图

什么是位图

当我们用数组模拟哈希表,只统计元素是否存在的时候,使用的及时位图的思想

概念:位图(BitMap)就是:用 1 个 bit(0/1)来表示某个数是否存在,用极小空间存大量整数的存在状态。

我们对每一个比特位0和1的修改,就可以统计较短数组中元素的存在与否。

优势:位图最大的价值是用极致的空间效率,实现对整数存在性的快速判断和操作

我们之前的算法已知都是强调时间复杂度,且由于空间资源变得越来越易获取,我们一度使用空间来换时间,但是这并不意味着空间就不重要,它同样很重要,特别是对于嵌入式开发,空间的资源还是很紧张的。

对于位图的使用,

常见的位运算

必不可少:

  1. 基础位运算操作符:<< >> & | ^
  2. 给一个数n,确定它的二进制中表示中的第x位是0还是1:(n>>x) & 1
  3. 将它的第x位改成1:n |=(1<<x)
  4. 将它的第x位改成0: n &= (~(1<<x))
  5. 提取二进制表示中的最右侧的1:n&(-n)
  6. 干掉二进制表示中的最右侧的1 :n&(n-1)
  7. 异或的运算规律:
  • a^a=0
  • a^0=a
  • a^ b^ = a ^ ( c^b)(交换律)

代码逻辑

  • 使用位图

5.下期要讲解的题目是:

消失的两个数字

6.嗟食

如果小编写的内容对佬有帮助,还请大佬点点三连加关注哦

在这里插入图片描述


佬的支持就是我前进的最大动力~

期待与佬的再次相遇~

Read more

AI 全栈开发实战:基于 trae + uni-app 极速开发扫码点餐小程序

效果抢先看 ❝ 扫码即点、自动识别桌号、前后端一体管理 —— 一个完整的点餐系统原来可以这么快上线! 一、开发环境准备 1.1 安装 HBuilder X(uni-app 官方 IDE) 下载地址:https://dcloud.io/hbuilderx.html 这是我们的核心开发工具,支持 Vue 语法,一键编译到微信小程序。 1.2 安装微信开发者工具 下载地址:https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html 用于真机预览、调试与上传审核。 1.3 安装 Trae 国际版(AI 编程助手) 下载地址:

By Ne0inhk
GpuGeek 大模型教程:凭借镜像与资源优势,带你畅行垂直 AI 领域

GpuGeek 大模型教程:凭借镜像与资源优势,带你畅行垂直 AI 领域

我的个人主页我的专栏:人工智能领域、java-数据结构、Javase、C语言,MySQL,希望能帮助到大家!!!点赞👍收藏❤ 文章目录 * 一:引言 * 二: GPUGEEK 平台的详细概述 * 2.1 充沛的算力资源 * 2.2丰富多元的镜像资源 * 2.3 繁荣的模型市场 * 2.4 灵活弹性的计费模式 * 2.5与其他平台的对比 * 三:接下来将带领大家进行GPUGEEk的注册 * 四:在线大模型的体验 * 4.1API 调用 * 4.1.1使用 Node.js 客户端调用 API * 4.1.2使用 Python 客户端调用 API * 4.1.

By Ne0inhk
LLM -Awesome OpenClaw Skills:给本地 AI 助手装一个「超级插件市场」

LLM -Awesome OpenClaw Skills:给本地 AI 助手装一个「超级插件市场」

文章目录 * 一、OpenClaw 是什么,它为什么需要「技能」 * 二、这个仓库到底包含什么 * 2.1 仓库定位:精挑细选的技能清单 * 2.2 技能协议:遵守 Anthropic 的 Agent Skill 规范 * 三、OpenClaw 技能怎么安装和使用 * 3.1 官方推荐:用 ClawHub CLI 一键安装 * 3.2 手动安装:适合喜欢掌控一切的开发者 * 3.3 最偷懒的方式:在对话里直接贴技能仓库链接 * 四、这个列表为什么存在:解决「技能过载」问题 * 4.1 ClawHub 的问题:量太大,但质量参差不齐

By Ne0inhk

2026 AI 发展趋势预测:从技术迭代到产业深耕,开启普惠新纪元

站在2026年的起点,回望2023-2025年的AI发展浪潮,我们见证了大模型从“昙花一现”到“全面爆发”,AI上车从“概念演示”到“标配功能”,AIGC从“小众玩法”到“全民普及”。这三年,算力竞争日趋白热化,数据要素正式纳入国民经济核算体系,全球AI监管政策密集出台,推动行业从“野蛮生长”向“规范有序”转型。2026年,将是AI发展的关键拐点——技术上从“规模竞赛”转向“能力深耕”,产业上从“概念验证”走向“价值兑现”,社会层面从“被动接受”转为“主动适配”。本文将从技术、产业、社会三个核心维度,结合最新行业动态,全面预测2026年AI的发展走向,为开发者、从业者及企业提供参考。 一、大模型新阶段:从“更大”到“更懂你”

By Ne0inhk