leetcode中国-pyLeetCode:牛客网算法笔记

时间:2024-07-19 14:19:42
【文件属性】:

文件名称:leetcode中国-pyLeetCode:牛客网算法笔记

文件大小:694KB

文件格式:ZIP

更新时间:2024-07-19 14:19:42

系统开源

leetcode中国 week1 二分 和 基础排序, 将位运算(神仙题)移到 week14 时间复杂度,空间复杂度 基础排序 选择排序,冒泡排序,插入排序 (如无特殊说明,有序指的都是升序) 先判断数组是否为空,以及长度是否大于0 选择排序 i: 0...n-1 遍历 i...n-1 找到 minIdx 交换 minIdx 和 i 冒泡排序 01 12 23 ... n-2 n-1 两两比较,> 的话,swap 01 12 23 ... n-2 n-3 两两比较... 插入排序 最有技巧的 i: 0...n-1 // 看 0..0 是否有序 // 看 0..1 是否有序 // 看 0..2 是否有序 // 看 0..3 是否有序 // 看 0..i 是否有序 判断有序的方法 比较 i-1 和 i,如果 >,一直交换到 i 到(目前)应该在的位置 for(int j = i; j >= 1 && arr[j-1] > arr[j]; j--) { swap(arr, j-1, j) } 因为 0...i-1 都是有序的,可能 arr[i] > arr[i-1], 比较一次就结束了 为什


网友评论