分享好友 最新动态首页 最新动态分类 切换频道
快排--java实现
2024-12-20 05:14

  快速排序的思想,寻找一个轴位,比这个轴小的放到左边,比这个轴大的放到右边,然后分别再对两边进行如此的方法即可得到排序的数组。

  这样说起来晦涩难懂,我们举个例子来实现。

  例如数组:{13,19,9,5,12,8,7,4,21,2,6,11},选取末位11为轴,

  第一次遍历得到:{13,19,9,5,12,8,7,4,21,2,6,11}

  第二次遍历得到:{13,19,9,5,12,8,7,4,21,2,6,11}

  第三次遍历得到:{9,19,13,5,12,8,7,4,21,2,6,11}

  第四次遍历得到:{9,5,13,19,12,8,7,4,21,2,6,11}

  第五次遍历得到:{9,5,13,19,12,8,7,4,21,2,6,11}

  第六次遍历得到:{9,5,8,19,12,13,7,4,21,2,6,11}

  第七次遍历得到:{9,5,8,7,12,13,19,4,21,2,6,11}

  第八次遍历得到:{9,5,8,7,4,13,19,12,21,2,6,11}

  第九次遍历得到:{9,5,8,7,4,13,19,12,21,2,6,11}

  第十次遍历得到:{9,5,8,7,4,2,19,12,21,13,6,11}

  第十一次遍历得到:{9,5,8,7,4,2,6,12,21,13,19,11}

  最后我们把原来的轴11与中间位置12交换得到:{9,5,8,7,4,2,6,11,21,13,19,12}

 

  我们开始排列两边,{9,5,8,7,4,2,6} 和{21,13,19,12}

  我们选取6和12分别为两边的轴,开始新的一轮遍历,

  第一次遍历:{9,5,8,7,4,2,6}  ,   {21,13,19,12}

  第二次遍历:{5,9,8,7,4,2,6}  ,  {21,13,19,12}

  第三次遍历:{5,9,8,7,4,2,6}  ,  {21,13,19,12}

  第四次遍历:{5,9,8,7,4,2,6}  ,  无

  第五次遍历:{5,4,8,7,9,2,6}  ,  无

  第六次遍历:{5,4,2,7,9,8,6}  ,  无

  最后我们把原来的轴6和中间位置7交换,得到:{5,4,2,6,9,8,7}   。把原来的轴12和中间位置21交换,得到:{12,13,19,21}

 

  我们分成了小数组:{5,4,2} 和{9,8,7} 和{13,19,21},分别以2和7,21为轴进行新一轮的遍历

  第一次遍历:{5,4,2}  ,  {9,8,7}  ,  {13,19,21}    注意:13和13自己进行交换,

  第二次遍历:{5,4,2}  ,  {9.8.7}  ,  {19,13,21}    

  最后我们把原来的轴2和中间位置5交换,得到:{2,4,5}。把原来的轴7和中间位置9交换,得到:{7,8,9}。把原来的轴21和中间位置21交换,得到{19,13,21}

 

  我们分成小数组:{2,4}和{7,8}和{19,13},分别以4,8,13为轴,开始新的一轮遍历。

  第一次遍历:{2,4}  ,  {7,8}  ,  {19,13}

  这里已经结束遍历,原来的轴和中间位置交换,得到{2,4}     {7,8}    {13,19} 。 自此遍历结束,得到了顺序的数组。

  注意:(1)这里的“中间位置”,并不是说的位置上的中间,而是指的是轴的中间位置,也就是说,这个中间位置是左边的比轴小,右边的比轴大!!!

     (2)这里的红色标志表示交换,如果是有一个红色的表示自己和自己交换!!!

 

  程序员还是用代码来说事,这么多文字,大家可能会看不下,那就看下代码,不明白的可以对照上面的顺序来屡屡。

 

附上另一种方法:

  快速排序主要是掌握方法,其中获取中间位置的算法是核心算法,这里是排序的关键,做什么事情势必要亲身尝试,哪怕错了可以重头再来!!!

  

 

最新文章
第三章 大数据管理(这次不考,就闲的写写)
按照老师所讲,仅供参考 前面为大数据的相关概念,后面为爬虫概念及使用 实际用书为大数据导论。。。1.数据 所有能输入到计算机并被计算机程序处理的符号的总称 2.数据的分类 结构化数据:包括预定义的数据类型、格式和
行业如何优化seo 行业SEO优化策略:精准提升排名秘籍
在当今数字化时代,搜索引擎优化(SEO)已成为各行各业提升在线可见性、吸引潜在客户、并最终驱动业务增长的关键策略行业要想在竞争激烈的市场中脱颖而出,就必须深刻理解并有效实施SEO的最佳实践以下是一篇关于“行业如何优化SEO”的深入
让“西安制造”再迎高光时刻
原标题:让“西安制造”再迎高光时刻 题:让“西安制造”再迎高光时刻新华社记者丁玫、李华、刘硕古城西安曾是西部地区工业发展的“领头雁”,黄河彩电、蝴蝶手表、华山照相机等产品曾从这里走向全国。去年底,西安市提出加快建设先进制造
百度蜘蛛池收录:定制小旋风蜘蛛池插件,优化SEO,提升网站排名的秘密武器
定制小旋风蜘蛛池插件助力百度蜘蛛池收录,通过优化SEO提升网站排名,成为网站优化不可或缺的秘密武器。本文目录导读:小旋风蜘蛛池插件概述定制小旋风蜘蛛池插件功能定制小旋风蜘蛛池插件优势如何使用定制小旋风蜘蛛池插件在当今互联网时
联想多款AI PC齐发:联想品牌&moto牵手热巴 开启AI终端新时代
本次发售体验会除了带来强大性能的AI终端硬件产品外,由端云混合大模型所驱动的联想个人智能体产品联想小天也正式亮相。在体验会现场的演示中,联想小天展现出强大的自然语言交互功能,以极其拟人化的语音和语气进行对话,为用户解决诸多问
运维新手入门——BIOS和UEFI的启动项
先插一句话,现在很多人用UEFI BIOS这个称呼。这里为了区分:BIOS一律指传统BIOS,UEFI BIOS一律称呼为UEFI。UEFI下的BIOS设置,一律称为UEFI设置。一直就想写这个,因为自己折腾Hackintosh。最初BootThink,后来Chameleon,现在Clover。每
马云的焦虑,俞永福如何治
  今年双十一体验,普遍反馈不好。还没等这个负面发酵,高管俞永福离职的消息就被丢出来了。业界也就顾不得什么双十一了,阿里的公关还是业界的标杆。  俞永福是现任阿里大文娱的董事长兼CEO,2014年俞永福带着自己创立的UC并入阿里后
牙克石网站排名优化软件,提升网站流量的秘密武器,牙克石信息平台
牙克石网站排名优化软件是一款专为提升网站流量的工具,通过精准优化网站内容和结构,提高搜索引擎排名,从而吸引更多潜在客户。该软件采用先进算法,分析用户搜索习惯,智能推荐关键词,提升网站曝光率。该软件还具备实时数据监控功能,让
搜索引擎技巧.pdfVIP
搜索引擎技巧搜索引擎可以帮助使用者在Internet上找到特定的信息,但它们同时也会返回大量无关的信息。如果您多使用一些下面介绍的技巧,将发现搜索引擎会花尽可能少的时间找到您需要的确切信息。类别搜索1许多搜索引擎(如Yahoo!)都显示类
高清美女写真生成新潮流:用AI轻松打造你的虚拟女友!
步骤2:输入描述 在文本框中输入你想要的美女写真特点,比如“长发,蓝眼睛,穿着白色衬衣的模特”。保持描述的简洁且具体,系统会更容易理解你的需求哦。步骤3:选择风格(可选) 如果你对风格有特别要求,比如想要梦幻效果或者写实风格,
相关文章
推荐文章
发表评论
0评