确定两串乱序同构

简介: 来源:http://www.nowcoder.com/questionTerminal/164929d4acd04de5b0ee2d93047b3b20 题目描述给定两个字符串,请编写程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。

来源:http://www.nowcoder.com/questionTerminal/164929d4acd04de5b0ee2d93047b3b20

题目描述
给定两个字符串,请编写程序,确定其中一个字符串的字符重新排列后,
能否变成另一个字符串。这里规定大小写为不同字符,且考虑字符串重点空格
给定一个string stringA和一个string stringB,请返回一个bool,代表两串是
否重新排列后可相同。保证两串的长度都小于等于5000。
测试样例:
"This is nowcoder","is This nowcoder"
返回:true
"Here you are","Are you here"
返回:false

思路说明:

这个题目描述里面“且考虑字符串重点空格”的意义描述不是很明确。

根据牛客网网友讨论和实际提交代码检测结果,感觉不像是要比较单词,而是直接比较字符。

毕竟是要把一个字符串strA调整字符顺序使得该字符串变得与字符串strB相等,所以关键不在于字符的顺序,而是字符出现的次数。

也就是说:假如strA与strB里面各个字符出现的次数对应相等,那么一定可以将strA变为strB。

所以统计strA中各个字符出现的次数并记录在countA[256]中,

然后统计strB各字符出现次数并记录在countB[256]中,

接着扫描countA[]和countB[],若是countA[i]==countB[i],i∈[0,255],则返回true,否则返回false。

 

相关文章
|
8月前
|
传感器 运维 安全
共享单车上的数字足迹:用代理IP编织隐私防护网
当你用手机扫描共享单车二维码时,设备间的数据交换远比表面复杂。骑行轨迹被分解为解锁时的基站定位、骑行中的GPS坐标、停留点的蓝牙信号和结算时的支付账户数据。这些信息通过运营商网络传输至云端,形成精确到分钟的时空画像。智能锁还记录骑行姿态,九轴传感器生成详细日志文件。然而,数据传输中存在泄漏风险,如IMEI码与IP关联导致隐私暴露。云端数据聚合则将骑行数据与其他消费行为交叉分析,提升广告转化率但威胁用户隐私。代理IP技术成为关键解决方案,通过动态IP轮换和流量混淆技术保护隐私,降低真实IP暴露率。未来,量子加密和生物特征技术将进一步影响隐私保护与商业成本的平衡。
168 1
|
8月前
|
JSON 前端开发 JavaScript
SpringBoot 2.0 多图片上传加回显
本文记录了在SpringBoot 2.0中实现商户注册后台功能时,处理多图片上传及回显的过程。通过使用`MultipartFile[]`接收前端传来的图片文件,并确保前后端参数名一致。展示了Controller、前端HTML和JS代码,以及配置文件中对上传图片大小的设置。还介绍了全局异常处理机制,使用`@ControllerAdvice`注解捕获异常。最后总结了一些常见问题及解决方法。
168 0
SpringBoot 2.0 多图片上传加回显
|
SQL 机器学习/深度学习 算法
【python】python指南(五):静态类型注解之List
【python】python指南(五):静态类型注解之List
151 0
【python】python指南(五):静态类型注解之List
SpringMVC 中的视图如何使用 Velocity
SpringMVC 中的视图如何使用 Velocity
|
人工智能 物联网 vr&ar
AR与VR技术的融合:开启全新的现实体验
在当今快速发展的科技领域中,混合现实(AR)和增强现实(VR)技术成为引人注目的热门话题。本文将探讨AR与VR技术的融合应用,以及它们给我们带来的全新现实体验。通过结合虚拟和真实世界的元素,AR与VR技术正逐渐改变着我们对于交互、娱乐、教育和工作的理解。
|
Python 算法 PyTorch
PyTorch 2.2 中文官方教程(三)(2)
PyTorch 2.2 中文官方教程(三)
412 0
PyTorch 2.2 中文官方教程(三)(2)
|
前端开发 JavaScript
深入理解JavaScript的事件循环(Event Loop)
深入理解JavaScript的事件循环(Event Loop)
|
Java
Java一分钟之-方法定义与调用基础
【5月更文挑战第8天】本文介绍了Java编程中的方法定义和调用,包括基本结构、常见问题和避免策略。方法定义涉及返回类型、参数列表和方法体,易错点有返回类型不匹配、参数错误和忘记返回值。在方法调用时,要注意参数传递、静态与非静态方法的区分,以及重载方法的调用。避免错误的策略包括明确返回类型、参数校验、理解值传递、区分静态和非静态方法以及合理利用重载。通过学习和实践,可以提升编写清晰、可维护代码的能力。
420 0
|
JavaScript 知识图谱
【冷知识】获取网页所有的监听事件类型、方法。请认准getEventListeners
【冷知识】获取网页所有的监听事件类型、方法。请认准getEventListeners
|
前端开发 JavaScript Linux
Linux 下 12 个最佳 Notepad++ 替代品
Linux 下 12 个最佳 Notepad++ 替代品