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

手机网站demowordpress 知更鸟 公告

手机网站demo,wordpress 知更鸟 公告,php开发做网站,地方文明网站建设01.01、[简单] 判定字符是否唯一 1、题目描述 实现一个算法#xff0c;确定一个字符串 s 的所有字符是否全都不同。 在这一题中#xff0c;我们的任务是判断一个字符串 s 中的所有字符是否全都不同。我们将讨论两种不同的方法来解决这个问题#xff0c;并详细解释每种方法…01.01、[简单] 判定字符是否唯一 1、题目描述 实现一个算法确定一个字符串 s 的所有字符是否全都不同。 在这一题中我们的任务是判断一个字符串 s 中的所有字符是否全都不同。我们将讨论两种不同的方法来解决这个问题并详细解释每种方法的实现过程。 2、方法一使用哈希表计数 2.1、思路解析 我们可以利用一个哈希表数组来记录字符串中每个字符的出现次数。具体步骤如下 字符数判断如果字符串的长度超过 26那么肯定有重复字符因为只有 26 个小写字母。哈希表初始化创建一个长度为 26 的数组 hash用于记录每个字符的出现次数。遍历字符串对于字符串中的每个字符将对应的哈希表位置加 1。重复字符检测在遍历过程中如果某个字符的出现次数大于 1直接返回 false。返回结果遍历结束后如果没有发现重复字符返回 true。 2.2、代码实现 class Solution { public:bool isUnique(string astr) {// 如果字符串长度超过 26必然有重复字符if (astr.size() 26) {return false;}// 初始化一个哈希表长度为 26对应 26 个字母int hash[26] {0};// 遍历字符串中的每个字符for (const auto ch : astr) {// 将字符转换为相应的索引位置hash[ch - a];// 如果某个字符的计数大于 1则返回 falseif (hash[ch - a] 1) {return false;}}// 如果没有发现重复字符返回 truereturn true;} };2.3、代码详解 首先检查字符串长度。如果长度超过 26立即返回 false因为小写字母只有 26 个无法保证全部字符唯一。初始化一个长度为 26 的整型数组 hash用于记录每个字母的出现次数。使用范围循环遍历字符串中的每个字符。计算当前字符在 hash 数组中的索引并将其对应的值加 1。如果某个字符的计数大于 1表示该字符重复立即返回 false。遍历结束后如果没有重复字符则返回 true。 3、方法二使用位图优化 3.1、思路解析 第二种方法使用了位图bit vector来优化空间复杂度。这种方法的核心思想是使用一个整数的位来表示字符是否出现过。具体步骤如下 字符数判断与方法一相同首先判断字符串长度是否超过 26。位图初始化使用一个整数 bitMap 来表示字符出现情况初始值为 0。遍历字符串对于字符串中的每个字符检查 bitMap 中相应的位置是否已经设置。重复字符检测如果 bitMap 中相应的位置已经设置过返回 false。否则将该位置设置为 1。返回结果遍历结束后如果没有发现重复字符返回 true。 3.2、代码实现 class Solution { public:bool isUnique(string astr) {// 利用鸽巢原理来做的优化如果字符串长度超过 26必然有重复字符if (astr.size() 26)return false;// 使用位图bit vector来记录字符出现情况int bitMap 0;// 遍历字符串中的每个字符for (const auto ch : astr) {int i ch - a; // 将字符转换为相应的位位置// 判断当前字符是否已经在 bitMap 中出现过if (((bitMap i) 1) 1)return false; // 如果已出现返回 false// 将当前字符加入到 bitMap 中bitMap | 1 i;}// 如果没有发现重复字符返回 truereturn true;} };3.3、代码详解 同样首先检查字符串长度。如果长度超过 26直接返回 false。初始化一个整型变量 bitMap初始值为 0用于记录字符的出现情况。遍历字符串中的每个字符。计算当前字符在 bitMap 中对应的位位置。检查 bitMap 中相应的位是否已经为 1。如果为 1表示该字符已出现过返回 false。如果当前字符没有出现过将对应的位设置为 1。遍历结束后如果没有重复字符返回 true。 4、总结 这两种方法都可以有效地判断一个字符串中的字符是否全都不同。方法一使用了哈希表代码直观易懂而方法二使用了位图优化节省了空间。如果字符串长度超过 26直接返回 false因为小写字母只有 26 个因此这是一种基于鸽巢原理的优化。选择哪种方法取决于具体的需求和优化目标。
http://www.hkea.cn/news/14316580/

相关文章:

  • 西安高端品牌网站建设wordpress柚子皮5.31
  • 关于外贸公司的网站光电信息科学与工程
  • 百度官网认证网站wordpress 商城 插件
  • 哪个网站上做ppt比较好看的南昌住房和城乡建设部网站电话
  • 济南定制网站建设棠下手机网站建设
  • 创意合肥网站建设怎么提升网站加载速度
  • 有没有做衣服的网站吗网站建设公司简介范文
  • 上海知名网站开发公司网站模板好
  • 帝国网站后台管理系统怎样建立一个自己的网站
  • 青岛网站建设莫道网络php网站后台密码忘记
  • 煤炭建设协会官方网站国内做外贸网站的有哪些
  • 做任务 网站孝感网站建设软件
  • 做网站怎么电话约客户代码编程教学入门
  • 青海省建设厅网站备案资料如何将网站和域名绑定域名
  • 怎样在微信上开发小程序临沂网站关键字优化
  • 专做宝宝的用品网站如皋网页设计
  • 简单的旅游网站代码国外网站免费dns
  • 内网是怎么做网站的百度网址大全首页设为首页
  • 郑州专业做淘宝网站推广越秀区做网站
  • 天宫院网站建设网站建设推广刺盾云
  • 互动网站开设网站步骤
  • 房产网站开发公司领动营销网站建设
  • 展示类网站模板js深圳网站设计兴田德润简介
  • 能做外链的产品网站做网站电商云数据库有用吗
  • 服装网站建设的规模和类别seo黑帽多久入门
  • 建网站有什么用wordpress好不好用
  • 织梦网站模板源码php回龙观手机网站开发服务
  • 网站设计建设,网络营销推广普通高等学校健康驿站建设指引
  • 做网站推广的工作好吗哈尔滨搜索引擎排名
  • ps做网站大小尺寸网站的备案号在哪