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

泰安北京网站建设公司哪家好普宁建设局网站

泰安北京网站建设公司哪家好,普宁建设局网站,网站建设 杭州,怎样登录建设互联网站1. 题目描述 给定两个仅包含小写字母的字符串 s 和 t #xff0c;编写一个函数来判断 t 是否是 s 的 字母异位词。 字母异位词定义#xff1a;两个字符串包含的字母种类和数量完全相同#xff0c;但顺序可以不同#xff08;例如 “listen” 和 “silent”#xff09;。 …1. 题目描述 给定两个仅包含小写字母的字符串 s 和 t 编写一个函数来判断 t 是否是 s 的 字母异位词。 字母异位词定义两个字符串包含的字母种类和数量完全相同但顺序可以不同例如 “listen” 和 “silent”。 原题链接[242] 2. 解题思路 使用哈希表的方式实现。 哈希表底层可以用一个数组实现将两个字符串的字符映射到哈希表的每个索引中然后依次对比两个哈希表内的元素是否一致即可。 关键在于如何构建哈希函数。 根据题目两个字符串都只包含小写字母最多26个小写字母所以构建哈希表的大小为26即可字母a放到索引0字母z放到索引25依次填入。 而如何将字母放到对应的索引中 根据代码原理字符本质上是基于 ASCII 码值的整数a到z对应是连续的ASCII 码值所以 ‘a’ - ‘a’是0‘b’ - ‘a’是1以此类推可以得到a的索引是0b的索引是1c的索引是2…这样就可以将字符串内的字符按规则填入哈希表的对应索引中进行比较。 3. C语言实现 3.1 双哈希表 bool isAnagram(char* s, char* t) {int lens strlen(s), lent strlen(t);if(lens ! lent)return false;int map1[26] {0} , map2[26] {0};for(int i 0; i lens; i){map1[s[i] - a] 1;map2[t[i] - a] 1;}for(int i 0; i 26; i){if(map1[i] ! map2[i]){return false;}}return true; }首先判断两个数组的长度是否相等长度不相等肯定不是字母异位词。定义两个哈希表map1和map2长度设置为26初始化全为0。for循环遍历两个字符串s和ts[i] - a’即表示字符串s中第i个位置的字符该对应于哈希表map1的第几个索引位置得到索引之后在map1的相应索引处加1代表该处有一个元素。map2同理。for循环遍历map1和map2的26个索引检查两个哈希表是否一致不一致则返回false表示两个字符串不是有效的字母异位词。 3.2 单哈希表 上面是用两个哈希表对应两个字符串遍历到字符时在对应的哈希表内加1计数可以优化一下使用全为0的单哈希表遍历s时在哈希表对应索引增加计数遍历t时在哈希表对应索引减少技术最后检查哈希表是不是全为0如果有的索引还有计数则说明两个字符串含有数量不一样的字符不是有效的字母异位词很好理解。 bool isAnagram(char* s, char* t){int lens strlen(s);int lent strlen(t);if(lent ! lens)return false;int map[26] {0};for(int i 0; i lens; i){map[s[i] - a] 1;}for(int i 0; i lens; i){map[t[i] - a] - 1;}for(int i 0; i 26; i){if(map[i] ! 0)return false;}return true; }
http://www.pierceye.com/news/287712/

相关文章:

  • 网站建设的流程是什么意思青岛做网站公司
  • 什么网站有项目做中铁建设企业门户网
  • 网站域名商代理商安卓商店
  • 深圳中英文网站建设广州知名设计公司排名
  • 一个公司设计网站怎么做的蜜桃传奇免费网页版
  • 网络推广网站培训班有人用wordpress默认主题
  • 网站建设 后台南宁做网站方案
  • 在线制作插画网站网站建设有哪些公司
  • 合肥的网站建设剂屏自己可以做开奖网站吗
  • 官网设计比较好看的网站学校网站建设对教学的意义
  • 济南建站推荐企汇优见效付款毕设代做网站招聘
  • 泰然建设网站免费软件app下载大全正能量网站
  • 张掖市网站建设北京代理记账财务公司
  • 中铁建设集团网站网络公司手机网站
  • 站长工具是什么意思建设银行网站 开户行怎么查
  • 做简历模板的网站都有哪些wordpress是啥东西
  • 网站流量渠道湖州做网站优化
  • 汽车网站哪个好预付的网站开发费用怎么入账
  • 网站代管理哪个网站有介绍拿到家做的手工活
  • 惊艳的网站网站建设实训过程报告
  • 秦皇岛做网站公司企业网站备案需要什么
  • 做网站必须开厂吗科协网站建设建议
  • 西宁 网站建设凡科做视频网站
  • wordpress中文主题 wp-cmsseo排名赚钱
  • 优质的网站制作在线查企业信息查询平台
  • 天津网站建设学习电子商务企业网站建设实训报告
  • 怎么让网站收录在google怎么免费安装wordpress主题
  • 在windows2003上做网站浙江网
  • 宣威网站wordpress把logo变大
  • 网站设计模式有哪些商城网站营销方案