1

これで、大文字と小文字だけを含む文字列ができました。文字列を、すべて大文字が小文字の後ろにあり、すべての大文字または小文字の相対的な順序が変更されない形式に変更したいと思います。

たとえば、文字列「aAbBcCDd」は「abcdABCD」に変わります。文字列「aaAAAbb」が「aabbAAA」に変わります。

文字列の長さを「N」と定義すると、O(NlogN)というアルゴリズムができます。しかし、もっと時間のかからないアルゴリズムがあるかどうか知りたいです。もちろん、メモリも限られています。長さに依存しないメモリが最も素晴らしいです。

どうもありがとうございます!!!

4

1 に答える 1

1

アルゴリズム:

入力:小文字と大文字が混在する文字列

出力:小文字、大文字の文字列(相対順序は変更されません)

Create two temporary Strings
String lower
String upper

loop over each character in your Input String

if char is upper
   append to upper
if char is lower
   append to lower

return concatenation of lower + upper
于 2012-09-29T16:38:36.253 に答える