Video: Setelah Nyoblos, Sandiaga Pantau Hitung Cepat di Kertanegara 2024
Belajar untuk menghitung objek dalam strim boleh membantu anda mencari item yang paling kerap atau pangkat peristiwa biasa dan tidak biasa. Algoritma ini memanfaatkan fungsi hash dan lakaran anggaran. Ia berbuat demikian selepas menapis objek yang diduplikasi dan mengira elemen yang berbeza yang muncul dalam strim data.
Anda menggunakan teknik ini untuk menyelesaikan masalah seperti mencari pertanyaan yang paling kerap dalam enjin carian, barang laris dari peruncit dalam talian, halaman yang sangat popular di laman web, atau stok yang paling tidak menentu (dengan mengira masa stok ialah dijual dan dibeli).
Anda menggunakan penyelesaian untuk masalah ini, Count-Min Sketch, ke aliran data. Ia hanya memerlukan satu pas data dan menyimpan seberapa sedikit maklumat yang mungkin. Algoritma ini diterapkan dalam banyak situasi dunia sebenar (seperti menganalisis trafik rangkaian atau mengurus aliran data yang diedarkan). Resipi itu memerlukan menggunakan sekumpulan fungsi hash, masing-masing yang dikaitkan dengan vektor bit, dengan cara yang menyerupai penapis Bloom, seperti ditunjukkan dalam gambar:
- Mulakan semua vektor bit ke nol di semua kedudukan.
- Terapkan fungsi hash untuk setiap vektor bit apabila menerima objek daripada strim. Gunakan alamat berangka yang terhasil untuk menambah nilai pada kedudukan itu.
- Terapkan fungsi hash ke objek dan dapatkan semula nilai pada kedudukan yang berkaitan apabila diminta untuk menganggarkan kekerapan sesuatu objek. Daripada semua nilai yang diterima daripada vektor bit, anda mengambil yang terkecil sebagai frekuensi aliran.
Kerana tabrakan sentiasa mungkin apabila menggunakan fungsi hash, terutamanya jika vektor bit yang berkaitan mempunyai beberapa slot, yang mempunyai beberapa bit vektor di tangan memastikan anda sekurang-kurangnya satu daripada mereka menyimpan nilai yang betul. Nilai pilihan haruslah terkecil kerana ia tidak bercampur-campur dengan tuduhan positif palsu akibat perlanggaran.