• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:C#の動的配列について)

C#の動的配列のソート方法とは?

このQ&Aのポイント
  • C#でMIDIファイルを解析する際にトラック別の音符情報をソートする方法が知りたいです。
  • 現在、音符情報を別のクラスにコピーしてソートしているため時間がかかっています。
  • データをコピーせずに効率的にソートする方法があれば教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • kero_mio
  • ベストアンサー率90% (94/104)
回答No.1

ArrayList に頼っているということは、VS.NET 2003か2002あたりで 開発してますか? 2002/2003で開発されているのであれば、SortedListを使ってみてはいかがでしょう?そうするとソートの必要性がないような気がします。 ■SortedList http://msdn.microsoft.com/ja-jp/library/system.collections.sortedlist(VS.80).aspx また、VS.NET2005/2008で開発しているのであれば、 Genericが使えるので、SortedList(Of TKey, TValue) を使い、さらに高速に処理でき、ソートの手間もいくぶん はぶけると思います。 ■SortedListのGeneric http://msdn.microsoft.com/ja-jp/library/ms132319(VS.80).aspx MIDIは詳しくない上に、上記ソースからでは、何がしたいのか 若干読み取れなかった部分がありますが、 Array.Sort(list);//時間で並べ替え の部分の"list"のソートが 重いってことだけはわかったので、Arrayではなく、SortedListの 導入をご検討ください。 ご参考になれば幸いです。

satosi3141
質問者

お礼

探していたのはまさにこれです。ありがとうございます! こんな便利なものがあるとは知らず・・・ ジェネリックも今度勉強しようと思います。 ありがとうございました!

関連するQ&A