❤️全面图解快速排序,详细图文并茂解析!❤️ | 您所在的位置:网站首页 › 五线谱详细图解法大全 › ❤️全面图解快速排序,详细图文并茂解析!❤️ |
写在前面: 大家好,我是时光。 今天给大家带来的是排序算法中的快速排序。 我采用图解方式讲解,争取写透彻。话不多说,开始! 思维导图: 通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。主要采用分治法和挖坑填数等方法,分治法就是大问题分解成各个小问题,堆小问题求解,使得大问题得以解决。 2,算法思路我们先搞清楚这个堆排序思想,先把逻辑搞清楚,不着急写代码。 我们首先有一个无序数组,比方说 int[] arr={4,2,8,0,5,7,1,3,9}; 2.1,第一步,取基准数基准数(枢轴),取数组的第一个元素,此时基准数:arr[0]=4 并定义两个变量i和j分别指向无序数组的第一个元素start和最后一个元素end。 //起始 int i=start; int j=end; //获取基准数 int temp=arr[start]; 2.2,第二步,分区过程分区过程,将比基准数大的数全放到它的右边,比基准数小的或者相等的数全放到它的左边。 我们首先把第一个元素arr[0]=4定义为基准元素,此时数组第一个位置就是坑,那么我们要从数组的右边向左开始查找小于基准数的元素,并与坑互换位置。 |
CopyRight 2018-2019 实验室设备网 版权所有 |