当前位置: 首页 > 知识库问答 >
问题:

对列表M,E,R,G,E,S,O,R,T应用快速排序

冯星剑
2023-03-14

共有1个答案

羊舌旭尧
2023-03-14

在字母下面使用^表示它是一个枢轴,使用*表示它已经枢轴。如果一个分区的长度为奇数,我选择“Rounded down Middle”(分区长度4将有第二个项目作为枢轴)。

请注意,在第4行中,有两个r,其中一个是枢轴。在这种情况下,副本(另一个R)可以在任何一边。

编辑:比较两个字母时,需要根据它们在字母表中的位置对它们进行排序。如果您基于它们的相对位置“排序”,您将永远不会移动任何元素,因此您自然不会对列表进行排序。

编辑#2:我使用的算法是,毫不奇怪,快速排序。

MERGESORT -> EEMRGSORT
    ^         ^

EEMRGSORT -> EEMRGORST
^*   ^       ^*     ^

EEMRGORST -> EEGMRORST
**  ^  *^    **^    **

EEGMRORST -> EEGMORRST
*** ^  **    ***  ^ **

EEGMORRST -> EEGMORRST
***^ *^**    ***^ *^**

EEGMORRST -> EEGMORRST
****^****    ****^****

EEGMORRST -> Complete
*********

如果我犯了错误,请纠正我。

 类似资料:
  • 使用anyloop,我将如何以这样的大小模式打印代码:a B c D e F g H J k L m N o P q R s T u V X y Z //结果是这样的:a B c D e F g H i J k L m N o P q R s T u V w X y Z

  • 描述 (Description) 此多元素选择器选择所有指定选择器E,F或G的组合结果。 您可以指定任意数量的选择器组合成单个结果。 这里jQuery对象中DOM元素的顺序不一定相同。 语法 (Syntax) 以下是使用此选择器的简单语法 - $('E, F, G,....') 参数 (Parameters) 以下是此选择器使用的所有参数的说明 - E - 任何有效的选择器 F - 任何有效的选

  • 当我尝试在CentOS7中启动Eclipse Luna时,会看到以下对话框: 如何解决这个问题并启动eclipse?

  • 到目前为止,我们已经看到了使用hibernate进行非常基本的O/R映射,但是有三个最重要的映射主题,我们必须详细了解它们。 这些是 - Mapping of collections, 实体类之间关联的映射,和 Component Mappings. 集合映射 如果实体或类具有特定变量的值集合,那么我们可以使用java中可用的任何一个集合接口映射这些值。 Hibernate可以持久保存java.u

  • Converts RGB values to an HSL object Parameters rnumberred gnumbergreen bnumberblue Returns: object HSL object in the following format: { h numberhue, s numbersaturation, l numberluminosity }

  • Converts RGB values to an HSB object Parameters rnumberred gnumbergreen bnumberblue Returns: object HSB object in the following format: { h numberhue, s numbersaturation, b numberbrightness }