当前位置: 首页 > news >正文

免费网站建设一级seo网络培训学校

免费网站建设一级,seo网络培训学校,17网站一起做网店好不好,青岛外贸网站制作快速排序(Quicksort)是一种基于分治思想的排序算法。它通过选择一个基准元素,将数组分为两个子数组,其中一个子数组的所有元素都小于基准元素,另一个子数组的所有元素都大于基准元素,然后递归地对这两个子数…

        快速排序(Quicksort)是一种基于分治思想的排序算法。它通过选择一个基准元素,将数组分为两个子数组,其中一个子数组的所有元素都小于基准元素,另一个子数组的所有元素都大于基准元素,然后递归地对这两个子数组进行排序。

具体步骤如下:

  1. 选择一个基准元素,通常选择数组中的第一个元素。
  2. 将数组分为两个子数组,一个是小于基准元素的子数组,一个是大于基准元素的子数组。可以使用两个指针分别从数组的两端开始,然后向中间遍历,当两个指针相遇时停止,并交换相遇位置的元素。
  3. 递归地对两个子数组进行步骤1和步骤2的操作,直到子数组的长度为1或者为空。
  4. 合并排序好的子数组,此时整个数组已经有序。

        快速排序的时间复杂度为O(nlogn),其中n是数组的长度。最坏情况下的时间复杂度为O(n^2),但是通过合理地选择基准元素,可以避免最坏情况的发生。快速排序是一种原地排序算法,不需要额外的空间。

下面是用Java实现快速排序的代码示例:

public class QuickSort {public static void main(String[] args) {int[] arr = {5, 8, 2, 1, 6, 3, 9, 4, 7};quickSort(arr, 0, arr.length - 1);System.out.println("排序结果:");for (int num : arr) {System.out.print(num + " ");}}public static void quickSort(int[] arr, int low, int high) {if (low < high) {int pivotIndex = partition(arr, low, high);quickSort(arr, low, pivotIndex - 1);quickSort(arr, pivotIndex + 1, high);}}public static int partition(int[] arr, int low, int high) {int pivot = arr[low];while (low < high) {while (low < high && arr[high] >= pivot) {high--;}arr[low] = arr[high];while (low < high && arr[low] <= pivot) {low++;}arr[high] = arr[low];}arr[low] = pivot;return low;}
}

        代码的思路是采用了分治法的思想。首先选择一个基准元素,通常是数组的第一个元素。然后将数组分为两部分,一部分是小于等于基准元素的元素,一部分是大于基准元素的元素。接着对这两部分分别进行快速排序,直到每个部分只剩下一个元素或者没有元素。

        在quickSort方法中,首先判断low是否小于high,如果是的话,调用partition方法划分数组,并在基准元素的位置将数组分为两部分,然后再分别对这两部分进行快速排序。

  partition方法使用两个指针lowhigh,分别从数组两端开始向中间移动。在移动过程中,如果遇到比基准元素小的元素,则将其放到左边,否则将其放到右边。最后将基准元素放到合适的位置,并返回该位置的索引。

        以上代码可以按照快速排序的思想对给定的数组进行排序。

输出结果为:1 2 3 4 5 6 7 8 9。

http://www.zhongyajixie.com/news/29847.html

相关文章:

  • 免费最好网站建设网络推广人员
  • 济南企业建站哪家做的好河北百度seo软件
  • 域名 空间 网站制作奶茶推广软文200字
  • 网站建设与网页设计如何进行网站宣传推广
  • 网站建设合同 费用南宁百度seo排名价格
  • 网站流量分析工具世界十大网站排名出炉
  • 给菠菜网站做外包网站建设哪个公司好
  • 渭南专业做网站苏州搜索引擎排名优化商家
  • 坂田做网站多少钱网站关键词优化推广哪家快
  • 外贸商做英文网站的目的网页关键词排名优化
  • 有哪些做画册的网站seo推广排名重要吗
  • 如何在虚拟机里面做网站怎么创建网站
  • 手机免费永久建立网站seo网站推广软件
  • 做奥网站免费seo视频教学
  • 虎门专业网站建设搜索关键词排名优化
  • 网站制作价格甄选乐云践新百度应用下载
  • 网投网站怎样建windows优化软件
  • 宝塔服务器官网短视频seo营销系统
  • 用thinkphp做音乐网站网站信息组织优化
  • 建设通网站上线什么是网店推广
  • 青海网站设计优化营商环境指什么
  • 怎样免费做书画网站营销软文范例大全300
  • 毕设 网站开发足球排名世界排名
  • 360网站备案查询网络营销策划ppt范例
  • 做网站应选那个主题腾讯会议多少钱一个月
  • 做网站不小心复制了别人的链接石家庄seo报价
  • 网站名称 备案软文兼职10元一篇
  • 傻瓜式网站模板种子搜索神器
  • 如何设置网站关键词免费自己建网站
  • 网站制作经典案例网络营销的四大特点