Мазмуну:

Чака сортту кантип жасайсыз?
Чака сортту кантип жасайсыз?

Video: Чака сортту кантип жасайсыз?

Video: Чака сортту кантип жасайсыз?
Video: АРКАРДЫ ТАШ МЕНЕН БАШЫНА УРУП ЖЫГЫТКАНДАРДЫН ВИДЕОСУ 2024, Май
Anonim

Чака сорттоо төмөнкүдөй иштейт:

  1. Башында бош массивди орнотуңуз " чакалар ".
  2. Чачыратуу: Ар бир объектти анын ичине салып, баштапкы массивден өтүңүз чака .
  3. Сорттоо ар бири бош эмес чака .
  4. Чогултуу: зыярат кылуу чакалар иретке келтирип, бардык элементтерди баштапкы массивге кайтарыңыз.

Мындан тышкары, мисалы менен чака сорттоо деген эмне?

Ошондой эле, сиз жумуш таба аласыз мисалдар нын чака сорту C, C++, Java жана Python тилдеринде. Чака сорттоо болуп саналат сорттоо техника ошол сорттор элементтерди адегенде бир нече топко бөлүү жолу менен элементтер чакалар . Элементтер алгач ичине чачыранды чакалар анда элементтер чакалар болуп саналат сорттолгон.

Андан тышкары, чака сорту кайда колдонулат? Чака сорту Киргизүү диапазондо бирдей бөлүштүрүлгөндө, негизинен пайдалуу. Мисалы, төмөнкү маселени карап көрөлү. Сорттоо 0,0дөн 1,0го чейинки диапазондо турган жана диапазондо бирдей бөлүштүрүлгөн калкыма чекиттүү сандардын чоң топтому.

Муну эске алып, чака сортундагы чакалардын санын кантип табасыз?

Эгерде чакалар узундугу 2^k, ар бири бар чака бир өлчөмү бар, жана чака сорту санаганга чейин бузулат сорттоо . Демек, ар бириңизди каалайсыз чака өлчөмү 1ден көп болушу. Эгерде бизде п чакалар , жана msbits(x, k) 2^k маанини, андан кийин ар бирин кайтарат чака өлчөмү 2^k/n.

Чака сортунун убакыт татаалдыгы кандай?

Орточо убакыттын татаалдыгы үчүн Чака сорттоо O(n+k) болуп саналат. Эң жаман убакыттын татаалдыгы O(n²) болуп саналат. космос татаалдыгы үчүн Чака сорттоо O(n+k) болуп саналат.

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