Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
配列について質問があります。たとえば、配列のサイズが 5 になることがわかっている場合、プログラムは
[9993, 1000, 9992, 3, 872]
配列に、配列の内容を効率的に編集して、次のようにするにはどうすればよいですか
[5, 3, 4, 1, 2]
O(n^2) で実行される二重の for ループしか実装できません。より良いアルゴリズムが見つかることを願っています。
ヒントはありますか?前もって感謝します!
これが機能するには、1 種類のソート アルゴリズムを使用する必要があるため、取得できる最適な実行時間は O(n logn) です。検索すると、オンラインで見つけることができる並べ替えアルゴリズムがたくさんあります。初心者に学習することをお勧めする最速のものは、クイックソート、マージソート、およびヒープソートです。