String 经典的字符串操纵面试问题?

String 经典的字符串操纵面试问题?,string,String,我计划进行一次现场面试,所以我准备了一些基本问题。根据公司简介,他们对字符串操作问题很感兴趣。到目前为止,我已经手动编码了这些功能: 字符串长度、复制、压缩、删除空白 逆转 字谜 回文的 有人能给我一个更经典的字符串问题列表,我可以在去那里之前练习吗?他们可能会问你关于正则表达式的问题。如果他们使用的是Java,他们可能会询问StringBuffer和StringBuilder的区别。请确保您的逆转已经到位。你没有说,所以可能已经说了 我想,要求您重新实现strstr()或strtok()可能也

我计划进行一次现场面试,所以我准备了一些基本问题。根据公司简介,他们对字符串操作问题很感兴趣。到目前为止,我已经手动编码了这些功能:

  • 字符串长度、复制、压缩、删除空白
  • 逆转
  • 字谜
  • 回文的

  • 有人能给我一个更经典的字符串问题列表,我可以在去那里之前练习吗?

    他们可能会问你关于正则表达式的问题。如果他们使用的是Java,他们可能会询问StringBuffer和StringBuilder的区别。

    请确保您的逆转已经到位。你没有说,所以可能已经说了

    我想,要求您重新实现
    strstr()
    strtok()
    可能也是他们的拿手好戏


    更新:作为奖励,如果您最终重新实现了其中任何一个,请记住不要以
    str
    开头命名函数,因为该名称空间是保留的。让应聘者在面试中展示自己的知识至少会给我留下深刻印象。:)

    退房。可能不符合“经典”的描述,但非常有趣。

    我会在一本好的算法书中查找字符串算法。例如,Boyer-Moore算法、尝试、后缀树、最小编辑距离等等。

    像Boyer-Moore和Knuth Morris-Pratt这样的快速搜索。通过一次检查多个字节来快速strlen。使用Rabin Karp在大量文本中同时查找多个字符串。用Levenshtein距离之类的东西寻找最近的匹配。正则表达式以及它们如何实现其中的一部分。各种unicode和其他多字节字符串编码以及如何在它们之间转换。

    将句子中的单词反转,例如

    "string manip interview question"
    
    变成

    "question interview manip string"
    

    这有一个只使用一个字符的临时空间的解决方案。

    设计一个正则表达式库。

    我同意正则表达式对于字符串操作的重要性。如果他们使用低级字符串操作,他们将永远不会使用regext。他们在“公司简介”中公开声明他们喜欢在面试中使用低级字符串操作问题?那是。。。真奇怪。我想你应该知道,这很好,但很奇怪。很抱歉,我在研究了公司简介后发现,我认为他们对字符串操作问题很感兴趣。公司没有提供任何类似的信息that@user189364:lol save实际上是说他们非常喜欢这样的问题,他们的个人资料到底是什么让你相信他们“擅长字符串操作”?:)@incrediman,我和几个现场采访过他们的人谈过,他们的反馈(我和两个人谈过)是彻底准备字符串操作我应该说你可以就地操作。记住最后一个空格字符的位置,然后将最后一个单词移到左边,所以这个词将是第一个。对每个单词都这样做。把它放在一个堆栈中,然后用特殊条件检查弹出?