首页 > 其他分享 >面试题 01.02. 判定是否互为字符重排

面试题 01.02. 判定是否互为字符重排

时间:2022-09-27 11:02:45浏览次数:69  
标签:面试题 ch string s2 s1 01.02 b1 b2 重排

面试题 01.02. 判定是否互为字符重排

给定两个字符串 s1s2,请编写一个程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。

示例 1:

输入: s1 = "abc", s2 = "bca"
输出: true 

示例 2:

输入: s1 = "abc", s2 = "bad"
输出: false

说明:

  • 0 <= len(s1) <= 100
  • 0 <= len(s2) <= 100

 

方法一:用哈希表(map)

func CheckPermutation(s1 string, s2 string) bool {
    var c1, c2 [26]int
    for _, ch := range s1 {
        c1[ch-'a']++
    }
    for _, ch := range s2 {
        c2[ch-'a']++
    }
    return c1 == c2
}

 

方法二:排序后比较

func CheckPermutation(s1 string, s2 string) bool {
    b1, b2 := []byte(s1), []byte(s2)
    sort.Slice(b1, func(i, j int) bool { return b1[i] < b1[j] })
    sort.Slice(b2, func(i, j int) bool { return b2[i] < b2[j] })
    return string(b1) == string(b2)
}

标签:面试题,ch,string,s2,s1,01.02,b1,b2,重排
From: https://www.cnblogs.com/fulaien/p/16733782.html

相关文章

  • 面试题
    Redis用过Redis吗,它使用在哪些地方(使用场景)?(阿里一面)为什么用Redis做排行榜?(阿里一面)如何保持Redis和MySQL数据一致?(阿里一面)......
  • 【面试题】Vue2动态添加路由 router.addRoute()
    Vue2动态添加路由点击打开视频讲解更加详细场景:一般结合VueX和localstorage一起使用router.addRoutesvue-router4后已废弃:使用router.addRoute()代替。vue-router......
  • Redis面试题
    为啥快?1.基于内存2.优秀的数据结构,大多数O(1)时间复杂度的命令3.自定义redis协议4.多路I/O复用模型5.单线程,避免线程切换影响持久化方式区别?AOF(保存的是命令)......
  • Python菱形继承(网易面试题)
    菱形继承顾名思义,是一个菱形继承(好像是废话),直接上图  菱形继承就是多继承,例上图所有,A是父类,B和C是A的子类,B和C是D的父类。classParent(object):def__init__(......
  • 你需要知道的webpack高频面试题
    谈谈你对webpack的看法webpack是一个模块打包工具,可以使用它管理项目中的模块依赖,并编译输出模块所需的静态文件。它可以很好地管理、打包开发中所用到的HTML,CSS,JavaScr......
  • 2022新鲜的阿里外包产品经理面试题
    虎哥寄语面试,就是一场博弈,你要在一定的时间内高效的证明你的能力,符合这个岗位需求、符合这个薪资需求、符合面试官个人需求。深度思考一下,对应问题要如何答复,才能既符合自......
  • Vue面试题22:说一说Vue实例在挂载过程中发生了什么 (总结自B站up主‘前端杨村长’视频,仅
    挂载过程中完成了两件最重要的事:初始化(App实例的创建、数据状态的初始化、选项的处理、建立响应式数据等)建立更新机制,把这两件事说清除即可回答范例1.挂载过程指的是ap......
  • golang面试题3
    go基础1、redis部署多节点模式,异步队列2、go-redis和redis-go//go-redis的连接模式,直连哨兵3、go异常处理,异常捕获方式,go里面替代try-catch如何操作4、gomaxprocs的默认......
  • 面试题1
    #第一题(列举了解的编程语言及语言的区别)编译型语言:一次性把代码都编译成二进制,然后运行解释型语言:实时性一行一行,编译一句,运行一句1.python解释型简洁高效,......
  • 2022-09-25-近60道MySQL经典面试题
    近60道MySQL经典面试题mysql面试常见问题学习整理2.3.17.18.19.20.44未看。1.B树和B+树之间的区别是?为什么mysql使用B+树?一个节点有多个元素;B+树也是排序了的;B+树非叶......