Неліктен біз Java тілінде TreeMap пайдаланамыз?
Неліктен біз Java тілінде TreeMap пайдаланамыз?

Бейне: Неліктен біз Java тілінде TreeMap пайдаланамыз?

Бейне: Неліктен біз Java тілінде TreeMap пайдаланамыз?
Бейне: Кофеден артық: Голанг. Неліктен Java әзірлеушілері GO тілін екінші тіл ретінде үйренуде. 2024, Қараша
Anonim

The Java тіліндегі TreeMap болып табылады пайдаланылады Карта интерфейсі мен NavigableMap қолданбасын абстрактілі класспен бірге енгізу. Карта кілттерінің табиғи реті бойынша сұрыпталады немесе қай конструктор екеніне байланысты карта жасау уақытында берілген Comparator арқылы сұрыпталады. пайдаланылады.

Сондай-ақ сұрақ: TreeMap қалай жұмыс істейді?

TreeMap Java тілінде. The TreeMap Карта интерфейсін және Abstract Class-пен бірге NavigableMap интерфейсін жүзеге асыру үшін қолданылады. Сондай-ақ, оның барлық элементтері сақталады TreeMap кілті бойынша сұрыпталады. TreeMap өз кілтінде табиғи тәртіпте сұрыптауды орындайды, сонымен қатар ол теңшелетін сұрыптауды жүзеге асыру үшін Comparator пайдалануға мүмкіндік береді.

Сол сияқты, неге HashMap TreeMap-тен жылдамырақ? Ол O(1) өнімділігін қамтамасыз етеді, while TreeMap элементтерді қосу, іздеу және жою үшін O(log(n)) өнімділігін қамтамасыз етеді. Демек, HashMap әдетте болып табылады Тезірек . А TreeMap жадты тиімдірек пайдаланады, сондықтан жадта сақталуы керек элементтердің санына сенімді болмасаңыз, бұл сізге жақсы Картаның орындалуы болып табылады.

Адамдар сонымен қатар TreeMap хэшті пайдаланады ма?

TreeMap бұл HashMap-пен салыстырғанда баяу, себебі ол add(), remove() және contain() сияқты көптеген операциялар үшін O(log(n)) өнімділігін қамтамасыз етеді. HashMap сыныбы пайдаланады the хэш кесте. TreeMap ішкі пайдаланады қызыл-қара ағаш, ол болып табылады өзін-өзі теңестіретін екілік іздеу ағашы. Map сыныбының equals() әдісі оны қайта анықтайды.

TreeMap сұрыпталған ба?

А-дағы жазбалар TreeMap әрқашан сұрыпталған пернелердің табиғи реттілігіне негізделген немесе пайдаланушы компараторына негізделген, оны жасау кезінде қамтамасыз ете аласыз. TreeMap . TreeMap нөлдік кілтті қамтуы мүмкін емес. Дегенмен, оның нөлдік мәндері болуы мүмкін. TreeMap синхрондалмаған.

Ұсынылған: