在Java中搜索和排序

时间:2016-09-11 23:48:58

标签: java sorting search bubble-sort

我正在尝试用Java解决以下问题,因为我是初学者,并试图加强我的Java技能。这是问题......

根据我们建议的16周课程安排,这个编程项目 应该在第13周的周一之前完成。它的价值是8% 你的最终成绩。请参阅您的“转让说明”文件 主页提供您的工作的详细信息。你的整体课程 评估信息可在“课程指南”中找到。

  1. Shell排序是冒泡排序的变体。而不是比较相邻 值,Shell排序调整二进制搜索的概念来确定a 在任何交换发生之前比较价值的“差距”。在里面 第一次通过,间隙是阵列大小的一半。对于每个后续的传球, 间隙大小减少一半。对于最后的传递,间隙大小为1,因此它将是 与冒泡排序相同。传递继续,直到没有交换。 下面是与第18章中的冒泡排序示例相同的一组值 (第661页),显示第一遍:
  2. 9 6 8 12 3 1 7 - 数组大小为7,因此间隙为3

    9 6 8 12 3 1 7 - 9和12已经有序,所以没有 ^ --------- ^

    9 6 8 12 3 1 7 - 6和3不合规,所以交换  ^ --------- ^

    9 3 8 12 6 1 7 - 8和1不按顺序,所以交换  ^ --------- ^

    9 3 1 12 6 8 7 - 12和7不合规,所以交换  ^ --------- ^

    9 3 8 7 6 1 12 - 第1遍结束

    我不希望任何人给我直接的代码,但我会很高兴看到如何处理这个问题,因为我很难开始。请记住,我是初学者,所以知道真正先进的方法!

    感谢您的时间

1 个答案:

答案 0 :(得分:0)

  

“我很感激有关如何解决这个问题的意见”

首先,阅读关于冒泡排序和壳牌排序的维基百科文章,以便您了解他们在做什么。或者查看“第18章(第661页)中的冒泡排序示例” ....

然后重新阅读作业,看看你是否理解它的含义。

实现此类目标的关键是您首先需要理解算法。