0

整数ストレージの長さは 4 バイトで、文字ストレージは 1 バイトであることがわかっているため、ここで問題が発生します。巨大なデータがあり、それらをファイルに書き込む必要があります。

たとえば。私のデータは

    Integers - 123456789 (of length 9) (Total 9! factorial records)
    Character - abcdefghi (of length 9) (Total 9! factorial records)

処理時間が短いのはどっち?何かご意見は...

4

4 に答える 4

1

ファイルのアクセス時間と比較すると、重要ではありません。

于 2012-04-26T13:52:50.727 に答える
0

同じバイトなので、処理時間は同じようです!ファイルはRAMではなくハードドライブに保存されます。

于 2012-04-26T13:51:00.273 に答える
0

整数を使用すると、スペースを節約でき、時間も節約できますが、小さすぎて気付かないでしょう。整数は 4 バイト、9 文字は 9 バイトです。したがって、値ごとに 5 バイト余分に使用することになります。データセットの長さは9 です! = 362880であるため、1.73 MB である362880*5バイトが無駄になります。これは非常に小さなチャンクであり、ディスクへの書き込みは目立ちません。したがって、このサイズのデータ​​セットの違いに気付かないため、どちらが速くなるかではなく、自分に合ったものに基づいて整数または文字を選択してください。

于 2012-04-26T13:56:28.553 に答える
0

整数が個々の 32 ビット整数に格納されていて、それらをバイナリで保存する場合、整数ごとに 4 バイトがあり、変換オーバーヘッドはありません。文字列が 9 文字の配列に格納されている場合、それらをそのまま保存すると、文字列ごとに 9 バイトが発生し、変換のオーバーヘッドはありません。この場合、文字列は整数よりも I/O 時間がかかります。

整数を読み取り可能な 9 文字の文字列に変換し、他の文字列と同じ方法で保存すると、I/O 時間は同じになりますが、テキストへの変換に必要な整数の処理時間が余分にかかります。

于 2012-04-26T13:53:24.237 に答える