Atas pertanyaan tentang penghitungan inversi ini , saya menemukan makalah yang membuktikan batas bawah pada kompleksitas ruang untuk semua algoritma streaming (pasti) . Saya telah mengklaim bahwa batasan ini meluas ke semua algoritma waktu linier. Ini agak berani seperti pada umumnya, algoritma waktu linier dapat melompat-lompat sesuka hati (akses acak) dimana algoritma streaming tidak bisa; harus menyelidiki elemen-elemen secara berurutan. Saya dapat melakukan beberapa lintasan, tetapi hanya terus-menerus banyak (untuk runtime linier).
Karena itu pertanyaan saya:
Dapatkah setiap algoritma linear waktu dinyatakan sebagai algoritma streaming dengan banyak lintasan yang terus-menerus?
Akses acak tampaknya mencegah konstruksi (sederhana) yang membuktikan jawaban positif, tetapi saya belum dapat memberikan contoh balasan.
Bergantung pada model mesin, akses acak bahkan mungkin tidak menjadi masalah, karena runtime. Saya akan tertarik pada jawaban untuk model-model ini:
- Mesin turing, input datar
- RAM, masukan sebagai array
- RAM, masukan sebagai daftar tertaut