目录
Python算法之旅:http://iyenn.com/rec/1699032.html?spm=1001.2014.3001.5502
欢迎志同道合者一起交流学习,我的QQ:94509325/微信
找不同(Find The Difference)(也被称为“找茬”或“差异识别”)是一种训练观察力和注意力的技能,它可以在多个领域中找到实际应用。常见的应用场景有:
1、教育领域:在幼儿园和小学教育中,找不同游戏常被用来帮助孩子们锻炼他们的观察力和专注力;在艺术和设计课程中,学生可能需要找出两幅相似画作中的细微差别,以培养对细节的关注。
2、测试和质量控制:在制造业中,找不同技能用于产品质量检查,确保产品符合预定的标准和规格;在软件测试中,测试人员需要找出新版本软件与旧版本之间的差异,确保所有功能正常工作。
3、法律和调查:在法医学中,专家可能需要比较不同照片或证据以找出关键差异,帮助解决犯罪案件;在审计和财务调查中,找不同技能有助于发现财务报表或记录中的不一致之处。
4、游戏和娱乐:找不同游戏是休闲活动的一种形式,可以在家庭聚会、朋友聚会或在线平台上进行,为人们提供娱乐和放松。
5、广告和市场营销:在广告创意中,找不同游戏或挑战可以用来吸引公众的注意力,增加品牌曝光度;在产品推广中,通过展示产品的新旧版本差异,可以强调产品的升级和改进。
6、科学研究:在生物学中,研究人员可能需要比较不同物种或基因序列的差异,以了解它们的进化关系;在天文学中,科学家通过比较不同时间点的观测数据来寻找宇宙中的变化或新发现。
7、安全和情报分析:在安全监控中,分析师需要识别监控录像中的异常行为或变化;在情报分析中,找不同技能有助于发现情报信息中的不一致之处或隐藏线索。
总之,找不同这项技能在日常生活和工作中都有广泛的应用,它可以帮助人们更准确地识别差异,提高观察和判断能力。
1、找不同(限定添加字符):
1-1、Python:
- # 1.问题描述:
- # 给定字符串str1和str2,字符串str2由随机打乱字符顺序的字符串str1在任意位置添加一个字符生成,找出在str2中添加的那个字符.
- # 2.问题示例:
- # 输入str1 = "myelsa",str2 = "myealsa",输出a.
- # 3.代码实现:
- class Solution:
- # 参数str1:原始字符串
- # 参数str2:添加字符后的字符串
- # 返回值:添加的字符
- def find_the_difference(self, str1, str2):
- # 遍历两个字符串
- for i in range(len(str1)):
- # 如果发现不同的字符,直接返回该字符
- if str1[i] != str2[i]:
- return str2[i]
- # 如果遍历完str1后还没有找到不同的字符,那么str2中剩下的最后一个字符就是添加的字符
- return str2[-1]
- # 主函数
- if __name__ == '__main__':
- # 对str1/str2两个参数进行赋值
- str1 = "myelsa"
- str2 = "myealsa"
- # 实例化Solution类并调用自定义函数
- solution = Solution()
- # 打印结果
- print("原始字符串:", str1)
- print("添加字符后的字符串:", str2)
- print("输出插入的字符:", solution.find_the_difference(str1, str2))
- # 4.运行结果:
- # 原始字符串: myelsa
- # 添加字符后的字符串: myealsa
- # 输出插入的字符: a
1-2、VBA:
- Rem 自定义函数,功能:找不同(限定添加字符)
- Function FindTheDifference(str1 As String, str2 As String) As String
- Dim i As Integer
-
- ' 遍历两个字符串直到达到str1的长度
- For i = 1 To Len(str1)
- ' 如果发现不同的字符,直接返回该字符
- If mid(str1, i, 1) <> mid(str2, i, 1) Then
- FindTheDifference = mid(str2, i, 1)
- Exit Function
- End If
- Next i
- ' 如果遍历完str1后还没有找到不同的字符
- If Len(str1) < Len(str2) Then
- ' str2中剩下的最后一个字符就是添加的字符
- FindTheDifference = mid(str2, Len(str1) + 1, 1)
- ElseIf Len(str1) = Len(str2) Then
- ' 如果两个字符串长度相同但内容不同,则没有多余的字符
- ' 这里返回一个空字符串,因为str2并非在str1基础上增加一个字符衍生而来
- FindTheDifference = ""
- MsgBox "字符串 " & str2 & " 与 " & str1 & " 长度相同但内容不同,不符合要求", vbExclamation, "警告"
- Else
- ' 如果str1长度大于str2,这是不符合逻辑的,理论上str2应至少多一个字符
- ' 抛出错误或进行其他处理
- MsgBox "字符串 " & str2 & " 的长度不应该小于 " & str1, vbExclamation, "错误"
- ' 函数返回错误值或进行其他处理
- FindTheDifference = "Error"
- End If
- End Function
-
- Rem 执行过程,功能:调用自定义函数FindTheDifference,在立即窗口中输出结果
- Sub TestRun()
- ' 定义变量
- Dim str1 As String
- Dim str2 As String
- Dim result As String
-
- ' 对str1和str2两个参数进行赋值
- str1 = "myelsa"
- str2 = "myelsar"
- ' 调用自定义函数
- result = FindTheDifference(str1, str2)
- ' 打印结果
- Debug.Print "原始字符串: " & str1
- Debug.Print "添加字符后的字符串: " & str2
- Debug.Print "输出插入的字符: " & IIf(result <> "Error", result, "无有效字符或发生错误")
- End Sub
- '结果输出:
- '原始字符串: myelsa
- '添加字符后的字符串: myelsar
- '输出插入的字符: r
注意:1-2中的代码需粘贴到你的VBA编辑器中,按F5执行TestRun程序,在立即窗口中输出结果。
2、相关文章:
2-3、Python-VBA编程500例-019-02(入门级)
2-4、Python-VBA编程500例-020-01(入门级)
Python算法之旅:http://iyenn.com/rec/1699032.html?spm=1001.2014.3001.5502
个人主页:非风V非雨-CSDN博客
欢迎志同道合者一起交流学习,我的QQ:94509325/微信:



评论记录:
回复评论: