算法
各种基本算法和进阶算法的基本原理和实现,以及相关的数学知识
たいだ
放弃一定不难,但坚持一定很酷!
展开
-
java排序算法-快速排序
原理分治的思想:分解原问题,解决子问题,合并问题解快排与归并: 归并排序:简化分解,侧重合并 快速排序:侧重分解,简化合并如何分解: 基本思想:任选元素x作为分界线,称为主元(pivot)交换重排,满足x左侧元素小于右侧实现方法:选取固定位置主元x(如尾元素)维护两个部分的右端点变量i,j考察数组元A[j] ,只和主元比较若A[j] <= x,则交换A[j]和A[i+1],i,j右移若A[j] > x,则j右移把主元放在中间作分界线[外链图片转存失原创 2021-10-23 15:57:09 · 122 阅读 · 0 评论 -
java排序算法-冒泡排序
原理冒泡排序就是比较相邻的两个数的大小,然后根据比较的条件进行换位,比如下面的例子,如果数组的当前的元素比下一个元素的值要大,就交换这两个数的位置,即将数值小的往前移,然后接着往下进行比较,直到比较结束排序的过程就像泡泡一样,会慢慢往上浮现,所以形象的称为冒泡排序,代码int[] num={9,11,42,13,24,5,69,7,78,67,55,4};System.out.println(Arrays.toString(num));for (int i=1;i<num.length;原创 2021-10-23 15:40:54 · 98 阅读 · 0 评论