package Ġcom . algo expert . program Ċ Ċ fun Ġbubble Sort ( array : ĠMutable List < Int >): ĠList < Int > Ġ{ ĊĠĠĠ Ġif Ġ( array . size Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġarray ĊĠĠĠ Ġ} ĊĠĠĠ Ġvar Ġis Sorted Ġ= Ġfalse ĊĠĠĠ Ġvar Ġcounter Ġ= Ġ 0 ĊĠĠĠ Ġwhile Ġ(! is Sorted ) Ġ{ ĊĠĠĠĠĠĠĠ Ġis Sorted Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 0 Ġuntil Ġarray . size Ġ- Ġ 1 Ġ- Ġcounter ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( array [ i ] Ġ> Ġarray [ i Ġ+ Ġ 1 ]) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġswap ( i , Ġi Ġ+ Ġ 1 , Ġarray ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Sorted Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcounter ++ ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġarray Ċ } Ċ Ċ fun Ġswap ( i : ĠInt , Ġj : ĠInt , Ġarray : ĠMutable List < Int >) Ġ{ ĊĠĠĠ Ġarray [ i ] Ġ= Ġarray [ j ]. also Ġ{ Ġarray [ j ] Ġ= Ġarray [ i ] Ġ} Ċ } Ċ