INHOUDSOPGAWE:
Video: Hoe implementeer jy 'n binêre soekboom in Java?
2024 Outeur: Lynn Donovan | [email protected]. Laas verander: 2023-12-15 23:42
Implementering van 'n Binêre Soekboom (BST) in Java
- Die linker subboom van 'n nodus bevat slegs nodusse met sleutels minder as die node se sleutel.
- Die regter subboom van 'n nodus bevat slegs nodusse met sleutels groter as die node se sleutel.
- Die linker- en regtersubboom moet elk ook 'n wees binêre soekboom .
- Daar moet geen duplikaatnodusse wees nie.
Die vraag is ook, hoe word binêre soektog in Java geïmplementeer?
Kom ons kyk na 'n voorbeeld van binêre soektog in Java waar ons 'n element van 'n skikking gaan deursoek met behulp van rekursie
- klas BinarySearchExample1{
- publieke statiese int binarySearch(int arr, int eerste, int laaste, int sleutel){
- if (laaste>=eerste){
- int middel = eerste + (laaste - eerste)/2;
- if (arr[middel] == sleutel){
- terugkeer middel;
- }
Tweedens, waar gebruik ons binêre soekboom? Binêre soekboom - Gebruik in baie Soek toepassings waar data voortdurend inkom/uitgaan, soos die kaart en stel voorwerpe in baie tale se biblioteke. Binêre Ruimteverdeling - Gebruik in byna elke 3D-videospeletjie om te bepaal watter voorwerpe weergegee moet word.
Net so, hoe word binêre bome gevorm?
Skepping van binêre boom met behulp van rekursie
- Lees 'n data in x.
- Ken geheue toe vir 'n nuwe nodus en stoor die adres in wyser bl.
- Stoor die data x in die nodus bl.
- Skep rekursief die linker subboom van p en maak dit die linker kind van p.
- Skep rekursief die regte subboom van p en maak dit die regte kind van p.
Wat is kompleksiteit van binêre soektog?
Binêre soektog loop op die slegste logaritmiese tyd in en maak O(log n) vergelykings, waar n die aantal elemente in die skikking is, die O Groot O-notasie is, en log die logaritme is. Binêre soektog neem konstante (O(1)) spasie, wat beteken dat die spasie wat deur die algoritme geneem word dieselfde is vir enige aantal elemente in die skikking.
Aanbeveel:
Hoe het binêre kode begin?
Die moderne binêre getallestelsel, die basis vir binêre kode, is in 1689 deur Gottfried Leibniz uitgevind en verskyn in sy artikel Explication del'Arithmétique Binaire. Hy het geglo dat binêre getalle simbolies was van die Christelike idee van creatio ex nihilo of skepping uit niks
Hoe vind jy die middel van 'n binêre soektog?
Gegewe 'n gesorteerde skikking, vind ons die middelste element en kontroleer die element met die sleutel. As die middelste element gelyk is aan sleutel, het ons die sleutel gevind. As die middelste element groter is as die sleutel, soek ons aan die linkerhelfte van die middelste element, anders soek ons op die regterhelfte
Hoe implementeer jy stel-koppelvlak in Java?
Stel in Java Stel is 'n koppelvlak wat versameling uitbrei. Dit is 'n ongeordende versameling voorwerpe waarin duplikaatwaardes nie gestoor kan word nie. Basies word Set geïmplementeer deur HashSet, LinkedHashSet of TreeSet (gesorteerde voorstelling). Stel het verskeie metodes om skoon te maak, te verwyder, grootte, ens. om die gebruik van hierdie koppelvlak te verbeter
Wat is die ergste geval en gemiddelde saakkompleksiteit van binêre soekboom?
Binêre soekboom Algoritme Gemiddeld Ergste geval Spasie O(n) O(n) Soek O(log n) O(n) Voeg O(log n) O(n) Skrap O(log n) O(n)
Hoe implementeer jy 'n abstrakte klas in Java?
As 'n klas abstrak verklaar word, kan dit nie geïnstansieer word nie. Om 'n abstrakte klas te gebruik, moet jy dit van 'n ander klas erf, implementerings verskaf aan die abstrakte metodes daarin. As jy 'n abstrakte klas erf, moet jy implementerings aan al die abstrakte metodes daarin verskaf