1,冒泡排序就是最简单的每相邻的两个元素比较,每次循环确定一个最大或最小的数
所以,外层循环是n-1,内层循环是n-1-i(i是已确定的数)。
两层循环,所以是O(N^2)
public static void sort(List<Book> list){
for (int i = 0; i < list.size()-1; i++) {
for (int j = 0; j < list.size()-1-i; j++) {
//这个地方必须吧book在外面赋值,不然在set的时候list.get(j)和list.get(j+1)会是同样的值
Book book1=list.get(j);
Book book2=list.get(j+1);
if(list.get(j).getPrice()>list.get(j+1).getPrice()){
list.set(j,book2); //list.set()更新
list.set(j+1,book1);
}
}
}
}
https://blog.csdn.net/hcz666/article/details/117810787