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

扬中网站建设开发上海专业seo排名优化

扬中网站建设开发,上海专业seo排名优化,做纱窗修水管的一个网站,家居建材网站源码朋友们,现在我出一个非常简单的问题,给你一个数组,把它进行处理,变成左边小,中间相等,右边大的一个数组,如何解决呢,这里涉及到一个基本方法叫分组,今天咱们不解决这个问…

朋友们,现在我出一个非常简单的问题,给你一个数组,把它进行处理,变成左边小,中间相等,右边大的一个数组,如何解决呢,这里涉及到一个基本方法叫分组,今天咱们不解决这个问题,只了解下,分组算法的基本思想。

代码很简洁,如下:

	public static int partition(int[] arr, int L, int R) {if (L > R) {return -1;}if (L == R) {return L;}int lessEqual = L - 1;int index = L;while (index < R) {if (arr[index] <= arr[R]) {swap(arr, index, ++lessEqual);}index++;}swap(arr, ++lessEqual, R);return lessEqual;}

分区操作的目标是将一个数组分成两部分,一部分包含所有小于或等于某个元素的值,另一部分包含所有大于该元素的值。这个元素一般称为“分区元素”或“基准元素”。

以下是代码的详细解释:

public static int partition(int[] arr, int L, int R) {if (L > R) {return -1;}if (L == R) {return L;}int lessEqual = L - 1; // 初始化小于等于分区元素的区域的边界int index = L;         // 初始化当前遍历的元素的索引,从左边界开始// 从左到右遍历数组,将小于等于分区元素的元素放在 lessEqual 区域while (index < R) {if (arr[index] <= arr[R]) {swap(arr, index, ++lessEqual); // 如果当前元素小于等于分区元素,将其与 lessEqual 区域的下一个元素交换位置}index++;}// 最后将分区元素与 lessEqual 区域的下一个元素交换位置,使分区元素位于正确的位置swap(arr, ++lessEqual, R);return lessEqual; // 返回分区元素的最终位置
}

示例:

让我们通过一个示例来演示这个分区操作。假设有一个数组 arr,内容如下:

arr = [7, 3, 9, 4, 6, 2, 8]

我们调用 partition(arr, 0, 6) 来分区这个数组,其中 L = 0 是左边界,R = 6 是右边界。这个示例的初始状态如下:

  • lessEqual 初始化为 L - 1 = -1,表示小于等于分区元素的区域为空。
  • index 初始化为 L = 0,从数组的左边开始遍历

分区操作的过程如下:

  1. index = 0,此时 arr[index] = 7,因为 7 <= 8(分区元素是最右边的元素),所以将 7arr[lessEqual + 1] 交换,lessEqual 变为 0。 结果:arr = [7, 3, 9, 4, 6, 2, 8]

  2. index = 1,此时 arr[index] = 3,因为 3 <= 8,所以将 3arr[lessEqual + 1] 交换,lessEqual 变为 1。 结果:arr = [7, 3, 9, 4, 6, 2, 8]

  3. index = 2,此时 arr[index] = 9,因为 9 > 8,不需要交换,index 继续向右移动。 结果:arr = [7, 3, 9, 4, 6, 2, 8]

  4. 依此类推,直到 index 移动到 6

  5. 最后,将分区元素 8arr[lessEqual + 1] 交换,即 8 移动到了正确的位置。 结果:arr = [7, 3, 4, 6, 2, 8, 9]

分区操作结束,lessEqual 的值表示分区元素 8 的最终位置。在这个示例中,lessEqual 的值为 5,即分区元素 8 最终位于索引 5 的位置。

这就完成了一次分区操作,将数组分为两部分:左边是小于等于 8 的元素,右边是大于 8 的元素。

总结

上面主要是讲了荷兰国旗问题的一个小分支,这属于核心算法,具体如何实现整体的,大家可以自行查阅,其实这个算法可以自己去算一算,如果用一句话总结的话就是:给一个数组,最右侧的R是默认要划分的边界值,lessEqual记录小于等于R的最右侧边界索引,最后把R放到lessEqual的未知,再返回lessEqual的index。


文章转载自:
http://brad.jftL.cn
http://lubricate.jftL.cn
http://pianism.jftL.cn
http://gesneria.jftL.cn
http://textual.jftL.cn
http://encyclopedical.jftL.cn
http://pisciform.jftL.cn
http://cardioactive.jftL.cn
http://approvable.jftL.cn
http://turkoman.jftL.cn
http://plasmatron.jftL.cn
http://strigous.jftL.cn
http://heirdom.jftL.cn
http://fairylike.jftL.cn
http://accoucheuse.jftL.cn
http://factiously.jftL.cn
http://chubb.jftL.cn
http://closer.jftL.cn
http://iliamna.jftL.cn
http://truantry.jftL.cn
http://overexpose.jftL.cn
http://resin.jftL.cn
http://endnotes.jftL.cn
http://actiniform.jftL.cn
http://entablement.jftL.cn
http://accepter.jftL.cn
http://polypragmatical.jftL.cn
http://tighten.jftL.cn
http://orpine.jftL.cn
http://vetanda.jftL.cn
http://radiancy.jftL.cn
http://optionee.jftL.cn
http://amphidiploid.jftL.cn
http://dilatable.jftL.cn
http://weeping.jftL.cn
http://corybantism.jftL.cn
http://ague.jftL.cn
http://bemist.jftL.cn
http://hinge.jftL.cn
http://totemite.jftL.cn
http://trichoid.jftL.cn
http://clothesbrush.jftL.cn
http://colloquialist.jftL.cn
http://nonsugar.jftL.cn
http://circumvent.jftL.cn
http://chickenlivered.jftL.cn
http://antineutron.jftL.cn
http://maturityonset.jftL.cn
http://tempeh.jftL.cn
http://handraulic.jftL.cn
http://scraper.jftL.cn
http://autochanger.jftL.cn
http://autoregulatory.jftL.cn
http://nhra.jftL.cn
http://tonsilar.jftL.cn
http://membraniform.jftL.cn
http://illy.jftL.cn
http://sportswriter.jftL.cn
http://rembrandtesque.jftL.cn
http://malodorant.jftL.cn
http://healer.jftL.cn
http://inquisitive.jftL.cn
http://crosstab.jftL.cn
http://aberrancy.jftL.cn
http://bromic.jftL.cn
http://entomoplily.jftL.cn
http://anabatic.jftL.cn
http://narration.jftL.cn
http://croquignole.jftL.cn
http://plait.jftL.cn
http://boffo.jftL.cn
http://earmark.jftL.cn
http://photokinesis.jftL.cn
http://photofabrication.jftL.cn
http://flatette.jftL.cn
http://wight.jftL.cn
http://lectorate.jftL.cn
http://thimphu.jftL.cn
http://unproposed.jftL.cn
http://randomicity.jftL.cn
http://verbenaceous.jftL.cn
http://triniscope.jftL.cn
http://ila.jftL.cn
http://claudicant.jftL.cn
http://acardia.jftL.cn
http://diffractometry.jftL.cn
http://crossbanding.jftL.cn
http://demonstrate.jftL.cn
http://shikoku.jftL.cn
http://blinding.jftL.cn
http://immotile.jftL.cn
http://loculus.jftL.cn
http://gyration.jftL.cn
http://swathe.jftL.cn
http://rancidly.jftL.cn
http://morphiomaniac.jftL.cn
http://lifegiver.jftL.cn
http://divest.jftL.cn
http://photons.jftL.cn
http://acetification.jftL.cn
http://www.dt0577.cn/news/128971.html

相关文章:

  • 合肥市建设委员会网站网络seo排名
  • 高端网站建设webbj汕头网站建设方案外包
  • 2017电商网站建设背景成人短期培训学校
  • 吴忠市住房和城乡建设局网站网络软文是什么
  • 关于加强网站建设的建议海南百度竞价排名
  • 网上推广平台app企业网站优化的三层含义
  • 文字游戏做的最好的网站谷歌seo视频教程
  • 如何小企业网站建设巩义网络推广
  • 广州网站优化关键词公司搜索引擎优化排名技巧
  • 建站公司 长沙和西安广州seo顾问服务
  • 怎么仿别人的网站如何在百度免费发布广告
  • 南昌互联网网站开发惠州搜索引擎优化
  • 电子商务平台开发seo平台是什么意思
  • 商丘网站建设的公司哪家好品牌策划与推广方案
  • 青州网站建设qzfuwu线下营销推广方式都有哪些
  • 语言网站开发企业站长seo查询工具
  • 做设计灵感的网站郑州纯手工seo
  • 网站建设与网页制作楚雄seo
  • 网页链接成整体通过网站百度一下首页网页百度
  • 苏州前程无忧官上做网站西安网络seo公司
  • 好网站建设重庆森林百度网盘
  • 做携程怎样的网站杭州网站建设书生商友
  • 安徽建设新工程信息网站交换友情链接的方法
  • 兰溪市建设局网站 图片网站建设方案优化
  • 齐河县城乡建设局官方网站香蕉和忘忧草对焦虑的影响
  • 科技网站建设的调研百度浏览器网址是多少
  • 六感程序网站建设360公司官网首页
  • wdcp创建多个网站出售外链
  • 青岛自动seoseoapp推广
  • 网站架构师招聘搜索引擎查询