b'\n_START_ARTICLE_\nBubble sort\n_START_PARAGRAPH_\nBubble Sort_NEWLINE_Ang bubble sort (literal sa Tagalog: pag-uuring bula) ay isang uri ng algoritmong pag-uuri. Isinasagawa ito sa pamamagitan ng paghahambing sa mga magkakatabing numero sa isang listahan._NEWLINE_Nagsisimula ang paghahambing mula sa una at pangalawang numero sa listahan. Kapag ang naunang numero ay mas mataas kaysa sa ikalawang numero, sila ay pagpapalitin at ihahambing muli ang unang numero sa sumunod (ikatlong) numero. Patuloy na gagawin ang nasabing hakbang hanggat mas mataas ang naunang numero sa sumunod na numero sa listahan._NEWLINE_Kapag hindi na maaring pagpalitin ang dalawang numero, ang sumunod na numero naman ang ihahambing sa kasunod nitong numero sa listahan. Gagawin ang hakbang na ito hanggang ang sa marating ang dulo ng listahan. Kapag nangyari ito, magsisimula ulit ang paghahambing mula sa unahan ng listahan (bagong una at ikalawang numero). Uulitin ang mga nasabing hakbang hanggang sa ang lahat ng numero sa listahan ay nasa tamang posisyon na sa listahan._NEWLINE_Ang bubble sort ay isa sa pinakasimple at madaling intindihin na algoritmong pag-uuri. Gayunpaman, ito ay hindi magandang gamitin lalong-lalo na sa malalaking listahan sapagkat matagal itong matapos._NEWLINE_Ang bubble sort ay pinakamainam gamitin kapag ang listahan ay halos ayos na kung saan marami sa mga numero ay nasa tamang posisyon na._NEWLINE_Ang pangkaraniwan at malalang kaso ng algoritmong ito ay O(n\xc2\xb2)._NEWLINE_Halimbawa:_NEWLINE_4 3 5 2 1_NEWLINE_3 4 5 2 1_NEWLINE__NEWLINE_3 4 2 5 1_NEWLINE__NEWLINE_3 4 2 1 5_NEWLINE__NEWLINE_3 2 4 1 5_NEWLINE__NEWLINE_3 2 1 4 5_NEWLINE_2 3 1 4 5_NEWLINE__NEWLINE_2 1 3 4 5_NEWLINE_1 2 3 4 5_NEWLINE_Pseudocode:_NEWLINE_procedure bubbleSort( A : list of sortable items )_NEWLINE_   n = length(A)_NEWLINE_   repeat _NEWLINE_     swapped = false_NEWLINE_     for i = 1 to n-1 inclusive do_NEWLINE_       /* if this pair is out of order */_NEWLINE_       if A[i-1] > A[i] then_NEWLINE_         /* swap them and remember something changed */_NEWLINE_         swap( A[i-1], A[i] )_NEWLINE_         swapped = true_NEWLINE_       end if_NEWLINE_     end for_NEWLINE_   until not swappedend procedure'