Kadang-kadang, dalam antarmuka aplikasi VLSI kami , menjadi perlu untuk "mengelompokkan" beberapa entri dalam daftar tertentu (misalnya, pesan layanan dalam obrolan, kontak, dan panggilan telepon).
Ada baiknya jika semua catatan ini berasal dari satu sumber, tetapi jika berasal dari layanan yang berbeda, dan dengan navigasi kursor , algoritme penerapan menjadi sangat tidak sepele.
Saya sengaja tidak akan memberikan implementasi "dalam kode" di sini, tetapi saya akan menjelaskan pendekatan algoritmik eksklusif untuk solusi tersebut, sehingga, jika perlu, Anda dapat menskalakannya sendiri untuk tugas Anda. Begitu...
Rumusan masalah
Kami memiliki dua layanan. Bisa lebih, tetapi mengikuti gambar sebelumnya, biarlah, demi kejelasan, jadilah layanan Panggilan dan Kontak .
Terima kasih kepada kolega dari CRM untuk tugas yang menarik. Sementara itu, tidak perlu khawatir. "
, "" .
"" - , - , .
, , , , :
#1: " "
, -, - , . - .
" " , . "", ?
#2: " "
, ?.. (20 ) , "" , - .
, ( ) "" - ? , .
, ( ), . , "".
#1: " "
, , - - ( 20), - .
, - (merge ordered) (limit) "" .
, , "" 15 20 . 5 , " " - .
#3: "One Ring to rule them all"
? , - , . - , .
, " - , " - , .
#4: " server-side"
- , . , , .
stateless server-side , , - . , :
---
, ""
--
#2: " client-side"
, -, ?.. .
, " " (, , localStorage), .
- :
20 20
"" 5
5 "" + 15
5
20 - ? ! ( 20, "" )
" ", 25 20
Edge Cases
, - "" " ", "" .
, , : ", , , , !"