数据结构与算法 Time: 2025-02-20 Thursday 23:56:01 Author: Jackasher 数据结构与算法 开啃,这个麻烦难搞的东西啊 排序 基数排序 这个东西不理解,但是莫名其妙就排序好了,先排低位,再排高位 123456789//1.获取最大位数//2.取余数放桶里面//3.桶里面按顺序取出来放回数组//4.继续取第二位余数//5.重复最大位数n次 冒泡排序 这个简单,就是每一次循环挑出一个最大值,挑选n-1次 123456789101112131415//1.循环比较n-1次//2.谁大谁交换位置for (int i = 0; i < arr.length - 1; i++) { Boolean flag = false; for (int j = 0; j < arr.length - 1 - i; j++) { if (arr[j] > arr[j + 1]) { int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; flag = true; } } 快速排序 这个就抽象了,搞了我一天了,就是选一个数,左边比他小,右边比他大,一直选, 搞了一天,哎哟喂,这个左指针先动还是又指针先动导致 了排序的错误 123456789//{9, 855, 75, 65, 555, 4, 34, 2, 1} while (left != right) { while (left < right && arr[right] >= pivot) { // 添加 left < right 以防止越界 right--; } while (left < right && arr[left] <= pivot) { // 添加 left < right 以防止越界 left++; } Jack #Blog 数据结构与算法 http://example.com/2025/04/28/数据结构与算法/ 作者 Jack Asher 发布于 2025年4月28日 许可协议 动力商场查漏补缺知识点 上一篇 重定向和转发的区别 下一篇