現在のバージョンのSwiftでは、方法indexOf
は明らかに線形時間です。私の配列が大きいと、indexOf
を頻繁に呼び出す必要があるので、これはかなり無駄になります。どのように私たちはそのArray
をサブクラス化することができますArrayを拡張/サブクラス化してアイテムのインデックスを作成するにはどうすればよいですか?
- 我々は要素を挿入するたびに、ハッシュマップ
- たびの配列の自動魔法のインデックスそれは我々が要素を削除し、それがインデックスから削除し
- 要素を後で見つけようとするとすぐに返されます。
この配列をUITableViewに使用します。辞書を使うことを考えましたが、
- 注文は保存されていますか?
- インデックスを指定してオブジェクトを取得できますか?
- 特定のインデックスでオブジェクトを取得すると、それは線形時間または一定時間になりますか?
Array.indexOf
という固定の固定時間バージョンを使用します。
なぜ辞書を使用しないのですか? –
@MatiasElorriagaこれは私のUITableView用の私のデータソースになります。辞書を使用している場合は、索引で検索できますか? '' 'let item = myDict [row]' ''そしてそれは整理されていますか? – TIMEX
はい、キーで検索することができます(インデックスをキーとして使用することもできます)。いいえ、辞書には注文がありません。 –