Matematika-fu saya mengecewakan saya! Saya memerlukan cara yang efisien untuk mengurangi rentang jaringan menjadi superset, misalnya. jika saya memasukkan daftar rentang IP:
- 1.1.1.1 to 2.2.2.5
- 1.1.1.2 to 2.2.2.4
- 10.5.5.5 to 155.5.5.5
- 10.5.5.6 to 10.5.5.7
Saya ingin mengembalikan rentang berikut:
- 1.1.1.1 to 2.2.2.5
- 10.5.5.5 to 155.5.5.5
Catatan: daftar masukan tidak diurutkan (walaupun bisa saja?). Cara naif untuk melakukan ini adalah dengan memeriksa setiap rentang dalam daftar untuk melihat apakah rentang input x adalah subset, dan jika ya, BUKAN masukkan rentang x. Namun, setiap kali Anda memasukkan rentang baru, rentang tersebut mungkin merupakan superset dari rentang yang sudah ada, jadi Anda harus memeriksa rentang yang ada untuk melihat apakah rentang tersebut dapat diciutkan (misalnya, dihapus dari daftar saya).