时间复杂度:O(n2)
// 找出当前集合最小的数 public static Integer findMinNumber(linkedListarr) { int min = arr.get(0); for (int i = 0; i < arr.size(); i++) { if (arr.get(i) < min) { min = arr.get(i); } } return min; } // 把找到的最小元素插入最新链表中,并在原来集合中删除这个元素 public static linkedList selectionSort (linkedList arr) { linkedList newArr = new linkedList<>(); int arrSize = arr.size(); // 一共把这n个元素 进行n次插入操作 插入到新链表中 for (int i = 0; i < arrSize; i++) { Integer min = findMinNumber(arr); newArr.add(min); // 原来集合删除找到的最小元素,使得下次少找一个元素 arr.remove(min); } return newArr; }
补充:
List的remove()方法
当传入的参数为int类型,按索引(index)删除集合元素
当出入的参数为Integer类型,按元素删除



