We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
概念:越小的元素会经由交换慢慢“浮”到数列的顶端
它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成
方案
var sort = (arr) => { var middle; for (var i = 0; i < arr.length - 1; i++) { for (var j = 0; j < arr.length - 1 - i; j++) { if (arr[j] > arr[j+1]) { middle = arr[j+1]; // 此处也可以使用ES6的解构赋值处理 [arr[j], arr[j+1]] = [arr[j+1], arr[j]] arr[j+1] = arr[j]; arr[j] = middle; } } } return arr }
时间复杂度 O(n^2)
var sort = (arr) => { var min; for (var i = 0; i < arr.length -1; i++) { min = i for (var j = i + 1; j < arr.length - 1; j++) { if (arr[min] > arr[j]) { min = j } } if (min != i) { var temp = arr[min] arr[min] = arr[i] arr[i] = temp } } return arr }
The text was updated successfully, but these errors were encountered:
liuyidi
No branches or pull requests
基础排序
冒泡排序
它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成
时间复杂度 O(n^2)
选择排序
时间复杂度 O(n^2)
插入排序
快速排序
资料
The text was updated successfully, but these errors were encountered: