Nima uchun biz Java-da TreeMap-dan foydalanamiz?
Nima uchun biz Java-da TreeMap-dan foydalanamiz?

Video: Nima uchun biz Java-da TreeMap-dan foydalanamiz?

Video: Nima uchun biz Java-da TreeMap-dan foydalanamiz?
Video: Публичное собеседование: Junior Java Developer. Пример, как происходит защита проекта после курсов. 2024, Noyabr
Anonim

The Java-da TreeMap hisoblanadi ishlatilgan Abstract Class bilan birga Map interfeysi va NavigableMapni amalga oshirish uchun. Xarita kalitlarning tabiiy tartibiga ko'ra yoki qaysi konstruktor ekanligiga qarab xaritani yaratish vaqtida taqdim etilgan Comparator tomonidan tartiblanadi. ishlatilgan.

Bundan tashqari, TreeMap qanday ishlaydi?

TreeMap Java tilida. The TreeMap Abstract Class bilan birga Map interfeysi va NavigableMapni amalga oshirish uchun ishlatiladi. Bundan tashqari, uning barcha elementlari saqlanadi TreeMap kalit bo'yicha tartiblangan. TreeMap o'z kalitida tabiiy tartibda saralashni amalga oshiradi, shuningdek, shaxsiy saralashni amalga oshirish uchun Comparatordan foydalanishga imkon beradi.

Xuddi shunday, nima uchun HashMap TreeMap-dan tezroq? Bu esa O(1) ning ishlashini ta'minlaydi TreeMap elementlarni qo'shish, qidirish va o'chirish uchun O(log(n)) ning ishlashini ta'minlaydi. Demak, HashMap odatda bo'ladi Tezroq . A TreeMap xotiradan samaraliroq foydalanadi, shuning uchun agar siz xotirada saqlanishi kerak bo'lgan elementlar miqdoriga ishonchingiz komil bo'lmasa, u siz uchun yaxshi Xarita dasturidir.

Odamlar, shuningdek, TreeMap xashingdan foydalanadimi?

TreeMap bu HashMap bilan solishtirganda sekin, chunki u add(), remove() va contain() kabi koʻpgina operatsiyalar uchun O(log(n)) funksiyasini taʼminlaydi. HashMap klassi foydalanadi the hash stol. TreeMap ichki foydalanadi qizil-qora daraxt, qaysi hisoblanadi o'z-o'zini muvozanatlashtiruvchi Ikkilik qidiruv daraxti. Map sinfining equals() usuli uni bekor qiladi.

TreeMap tartiblanganmi?

a.dagi yozuvlar TreeMap har doim bor saralangan kalitlarning tabiiy tartibiga asoslangan yoki yaratilish vaqtida taqdim etishingiz mumkin bo'lgan moslashtirilgan Comparatorga asoslangan. TreeMap . TreeMap null kalitni o'z ichiga olmaydi. Biroq, u null qiymatlarga ega bo'lishi mumkin. TreeMap sinxronlashtirilmaydi.

Tavsiya: