Мазмуну:

Java'да бинардык издөө дарагын кантип ишке ашырасыз?
Java'да бинардык издөө дарагын кантип ишке ашырасыз?

Video: Java'да бинардык издөө дарагын кантип ишке ашырасыз?

Video: Java'да бинардык издөө дарагын кантип ишке ашырасыз?
Video: АЯЛДЫ КАНТИП КАНДЫРЫШ КЕРЕК КӨРГҮЛӨ! 2024, Апрель
Anonim

Java тилинде бинардык издөө дарагын (BST) ишке ашыруу

  1. Түйүндүн сол под дарагы түйүн ачкычынан азыраак ачкычтары бар түйүндөрдү гана камтыйт.
  2. Түйүндүн оң под дарагы түйүн ачкычынан чоңураак ачкычтары бар түйүндөрдү гана камтыйт.
  3. Сол жана оң поддарактын ар бири да болушу керек бинардык издөө дарагы .
  4. Кайталануучу түйүндөр болбошу керек.

Ошондой эле суроо туулат, экилик издөө Javaда кантип ишке ашырылат?

Келгиле, javaда бинардык издөөнүн мисалын карап көрөлү, анда биз рекурсияны колдонуп массивдин элементин издейбиз

  1. класс BinarySearchExample1{
  2. public static int binarySearch(int arr, int биринчи, int акыркы, int ачкычы){
  3. эгерде (акыркы>=биринчи){
  4. int mid = биринчи + (акыркы - биринчи)/2;
  5. if (arr[mid] == ачкыч){
  6. кайра орто;
  7. }

Экинчиден, биз бинардык издөө дарагын кайда колдонобуз? Binary Search Tree - Колдонулган көптө издөө көп тилдердин китепканаларындагы карта жана коюлган объекттер сыяктуу маалыматтар тынымсыз кирип/чыгып турган колдонмолор. Бинардык Космос бөлүү - Колдонулган дээрлик ар бир 3D видео оюндарында кандай объекттер көрсөтүлүшү керектигин аныктоо үчүн.

Ошентип, бинардык дарактар кантип пайда болот?

Рекурсияны колдонуу менен бинардык даракты түзүү

  1. x ичиндеги маалыматтарды окуу.
  2. Жаңы түйүн үчүн эстутумду бөлүңүз жана даректи р көрсөткүчүндө сактаңыз.
  3. Түйүндө x маалыматтарды сактоо p.
  4. Рекурсивдүү түрдө рдын сол ички дарагын түзүңүз жана аны рдын сол баласы кылыңыз.
  5. Рекурсивдүү түрдө рдын туура поддарегин түзүңүз жана аны рдын туура баласы кылыңыз.

бинардык издөө татаалдыгы деген эмне?

Бинардык издөө Эң начар логарифмдик убакытта иштейт, O(log n) салыштырууларды жүргүзөт, мында n - массивдеги элементтердин саны, O - Чоң О белгиси, ал эми log - логарифм. Бинардык издөө туруктуу (O(1)) мейкиндикти ээлейт, бул алгоритм тарабынан алынган мейкиндик массивдеги элементтердин каалаган саны үчүн бирдей экенин билдирет.

Сунушталууда: