私が作業しているプログラムは、整数の配列を文字列ビルダーを使って文字列に変換します。私はこのアプローチの複雑さを判断しようとしています。JavaでのStringBuilder.append()の複雑さはどのくらいですか?
答えて
チェックアウト:https://stackoverflow.com/a/7156703/7294647
を基本的に、それはあなたがそれを心配する必要はありませんので、それは、その実装に依存するので、時間複雑性がStringBuilder#append
何のためにあるのかは明らかではありません。
実際に達成しようとしていることに応じて、int [] - 文字列変換に近づく方が効率的かもしれません。
StringBuilder
の容量を増やす必要がある場合は、文字配列全体を新しい配列にコピーする必要があります。最初に容量を設定して、これを行う必要がないようにすることで、これを回避できます。 (あなたがint
アレイとint
のString
表現の最大文字数の長さを知っているので、これは簡単なはずです。)
あなたは容量を増加させる必要性を回避した場合、複雑さがちょうどように思われますに)。追加すると、String
の文字配列がStringBuilder
の文字配列の最後にコピーされます。
(はい、それは実装に依存しますが、それは)N(Oで時間を追加することができなかった場合、それはStringBuilder
のかなり貧弱な実装になります。)
これはおそらくそれより速いでしょう。 O(1)追加のために 'LinkedList'のようなものを使うことができます。 –
私はそれについては分かりません。それがO(1)ならば、値の代わりにリンクされたリスト自体をコピーしていることになります。最後に何かを追加したい場合、問題に遭遇しませんか?オリジナルを変更します。 –
- 1. 私のソリューションの複雑さはどのくらいですか?
- 2. このアルゴリズムの複雑さはどれくらいですか
- 3. javaのlastIndexOfの時間複雑度はどのくらいですか?
- 4. Pythonでzip()の時間の複雑さはどのくらいですか?
- 5. グラフデータベースでの検索クエリの複雑さはどのくらいですか?
- 6. クイックユニオンの時間複雑度はどのくらいですか?
- 7. JavaScriptのparseInt()の時間の複雑さはどのくらいですか?
- 8. 次の式の時間の複雑さはどのくらいですか?
- 9. JavaのLinkedListでsize()呼び出しの時間の複雑さはどのくらいですか?
- 10. clojureのカウント関数の複雑さはどのくらいですか?
- 11. boost :: hana :: tupleの要素アクセスの複雑さはどのくらいですか?
- 12. ツリートラバーサルの時間の複雑さはどのくらいですか?
- 13. heapifyUp()メソッドの時間の複雑さはどのくらいですか?
- 14. mergesortのマージ・ステップの複雑さはどのくらいですか?
- 15. yieldからのツリートラバーサルの時間複雑度はどのくらいですか?
- 16. HashSetから取得されるストリームフィルタの複雑さはどのくらいですか?
- 17. Neo4jの検索クエリの時間複雑度はどのくらいですか?
- 18. この順列アルゴリズムの空間複雑度はどのくらいですか?
- 19. このアルゴリズム(コード)の時間複雑度はどのくらいですか?
- 20. 次のコードの時間的複雑度はどのくらいですか?
- 21. このプログラムフラグメントの時間複雑度はどのくらいですか?
- 22. この関数の時間複雑度はどのくらいですか?
- 23. このdo-whileループの時間複雑度はどのくらいですか?
- 24. この関数の時間複雑度はどのくらいですか?
- 25. この擬似コードの時間複雑度はどのくらいですか?
- 26. モデルはどのくらい複雑になりますか?
- 27. ネストされたループでこの関数の複雑さはどのくらいですか?
- 28. アルゴリズム全体の時間複雑度はどのくらいですか?
- 29. 暗号ハッシュ関数の時間複雑度はどのくらいですか?
- 30. 時分割ソートアルゴリズムの時間複雑度はどのくらいですか?
あなたは「効率性」によって、正確に何を意味するのですか?最適化しようとしている基準は何ですか? –
もう1つの実現可能なアプローチに関してあるアプローチの効率を定義する必要があることも指摘する価値があります。衛星を軌道に打ち上げるには膨大な量の燃料が必要です(効率的ではありません)(https://space.stackexchange.com/a/17925)。代替手段がない場合は、「非効率的」なアプローチができますので、非効率性はほとんど無関係です。では、文字列作成ツールの代わりになるのは何ですか? –