今天去面试了一家公司,公司提的题目是如何将一个字符串
nothing is impossible 变成 impossible is nothing
在o(1)空间和o(n)的时间内
思路:
nothing is impossible --> elbissopmi si gnihton 这个需要两个数字变量记录首尾位置,一个字符变量用于移动首尾元素,将句子完全倒序
elbissopmi si gnihton --> impossible is nothing 这个需要三个数字变量,其中两个数字变量记录首尾位置,另一个数字变量记录空格位置,一个字符变量用于移动首尾元素,将空格前面的子句倒序。
个人心得:
在编写程序的时候算法真的很重要,如果想要提升的话,算法必须是基础。不能快到打四连大一时候的算法都忘掉了