私は弦のセットを持っています。それらの 90% は で始まる URL です"http://www."
。アルファベット順に並べたい。
現在、C++ std::sort() を使用しています。しかし、std::sort は比較に基づくクイック ソートの変形であり、長い共通プレフィックスを持つ 2 つの文字列を比較することは効率的ではありません。ただし、(私が思うに)基数ソートも機能しません。これは、共通のプレフィックスが長いため、ほとんどの文字列が同じバケットに入れられるためです。
この問題に対して、通常のクイックソート/基数ソートよりも優れたアルゴリズムはありますか?