Satura rādītājs:

Kā ieviest bināro meklēšanas koku Java?
Kā ieviest bināro meklēšanas koku Java?

Video: Kā ieviest bināro meklēšanas koku Java?

Video: Kā ieviest bināro meklēšanas koku Java?
Video: CS50 2015 - Week 5, continued 2024, Novembris
Anonim

Binārā meklēšanas koka (BST) ieviešana Java

  1. Mezgla kreisajā apakškokā ir tikai mezgli, kuru atslēgas ir mazākas par mezgla atslēgu.
  2. Mezgla labajā apakškokā ir tikai mezgli, kuru atslēgas ir lielākas par mezgla atslēgu.
  3. Kreisajam un labajam apakškokam ir jābūt arī a binārā meklēšanas koks .
  4. Nedrīkst būt mezglu dublikātu.

Jautājums ir arī par to, kā Java tiek īstenota binārā meklēšana?

Apskatīsim binārās meklēšanas piemēru java, kur mēs meklēsim elementu no masīva, izmantojot rekursiju

  1. class BinarySearchExample1{
  2. public static int binarySearch(int arr, int pirmais, int pēdējais, int atslēga){
  3. if (pēdējais>=pirmais){
  4. int mid = pirmais + (pēdējais - pirmais)/2;
  5. if (arr[mid] == taustiņš){
  6. atgriezties vidus;
  7. }

Otrkārt, kur mēs izmantojam bināro meklēšanas koku? Binārais meklēšanas koks - Lietots daudzos Meklēt lietojumprogrammas, kurās pastāvīgi tiek ievadīti/izplūst dati, piemēram, karte un iestatītie objekti daudzu valodu bibliotēkās. Binārs Kosmosa nodalījums - Lietots gandrīz katrā 3D videospēlē, lai noteiktu, kādi objekti ir jāatveido.

Tātad, kā veidojas binārie koki?

Binārā koka izveide, izmantojot rekursiju

  1. Lasīt datus x.
  2. Piešķiriet atmiņu jaunam mezglam un saglabājiet adresi rādītājā p.
  3. Saglabājiet datus x mezglā p.
  4. Rekursīvi izveidojiet p kreiso apakškoku un padariet to par p kreiso bērnkoku.
  5. Rekursīvi izveidojiet pareizo p apakškoku un padariet to par p pareizo atvasināto koku.

Kas ir binārās meklēšanas sarežģītība?

Binārā meklēšana darbojas sliktākajā logaritmiskajā laikā, veicot O(log n) salīdzinājumus, kur n ir elementu skaits masīvā, O ir Big O apzīmējums un log ir logaritms. Binārā meklēšana aizņem nemainīgu (O(1)) telpu, kas nozīmē, ka algoritma aizņemtā telpa ir vienāda jebkuram masīva elementu skaitam.

Ieteicams: