全两册剑指offer新增大量python书
104.6元
包邮
(需用券)
去购买 >
开篇介绍
大家好,我是Java最全面试题库的提裤姐,今天这篇是数据结构与算法篇,主要介绍交换排序;在后续,会沿着第一篇开篇的知识线路一直总结下去,做到日更!如果我能做到百日百更,希望你也可以跟着百日百刷,一百天养成一个好习惯。
交换排序
两两比较待排序记录的关键字,如果发现两个记录的次序相反时即进行交换,直到没有反序位置。
分为冒泡排序和快速排序。
冒泡排序
通过相邻元素之间比较和交换,使较小移向顶部,从后往前两两比较。
时间复杂度:O(n^2)
空间复杂度:O(1)
稳定性:稳定/**
* 冒泡排序
* 循环比较相邻的两个数,将较大的数放在后面
*
* @param nums 待排序数值序列
*/
private static int[] bubbleSort(int[] nums) {
int len = nums.length;
if (len == 0 || len == 1) {