一个小程序的算法优化(字符串倒序)

来源:百度知道 编辑:UC知道 时间:2024/05/19 15:41:02
题目,“abc def 567”例如上例的字符串,处理成“cba fed 765”,即:字符串中有空格间隔,每个被间隔的小段字符串倒序,字符串长度不确定。用c实现。
题目不难,我自己也写了一个解法。但是感觉太繁琐。不知道哪位大侠可以提供更简练的算法。
程序没有编译过,不贴了,我大致讲下自己的想法。因为在这个字符串中包含的每一个小段字符串都是在空格之间,除了第一段跟最后一段。我的算法是先取出第一小段,记录此时循环停下的位置。之后,第二段开始到最后一段,都是在两个空格之间,可以用相同的方法取出来并做倒序处理。最后一段,加 一个判断,碰到'\0',取出,做倒序处理。如此。。。。

如果有朋友觉得我说得不是很清楚,我稍后会贴上代码。

用vb很容易实现,不要什么算法;
Option Explicit

Private Sub Command1_Click()
Dim a() As String
Dim i As Integer
a = Split(Text1)
For i = 0 To UBound(a)
Print StrReverse(a(i)) & " ";
Next
End Sub

先取反,再把第一小部分和第三小部分对调就可以!