1. bolbSort(arr: number[]) {
  2. for (let i=0; i<arr.length; i++){
  3. for (let j=0; j<arr.length-1-i; j++){
  4. if (arr[j]>arr[j+1]){
  5. swap(arr, j, j+1)
  6. }
  7. }
  8. }
  9. return arr
  10. }
  11. swap(arr: number[], i: number, j: number) {
  12. let temp = arr[i]
  13. arr[i] = arr[j]
  14. arr[j] = temp
  15. }

思路:

没啥说的,大一接触编程,第一个学习的算法。是选择排序的升级版,对比相邻的元素,把最大的元素放到数组最后,然后重复。时间复杂度n2。