我想完成这种排序技术

时间:2014-08-06 17:07:35

标签: arrays algorithm sorting

我将如何开始编码这种排序技术(我从算法中改变了它,因为真正制作能够做到这一点的代码效率不高。仅用于知识目的)来完成这项特定的任务?

所以我们假设我们有一个1,0,14,5,3,1的混乱数组。 假设以一种方式排序,即新阵列将在最低区域中放置最低,在最高区域中放置最高阵列。

[ - , - , - , - , - , - ](空数组。短划线表示数组中的空位)

[ - 44, - , - , - , - ,5]

那么它假设要做

[ - 43,4, - , - ,3,5]

然后

[ - 43,4,1,1,3,5]

并完成排序。

同样的事情必须发生,但也有奇数。

编辑:是奇数我是指奇数编号。

这种技术还有什么重要意义?

编辑:以下是该计划的视频......是的,你会发现这是非常低效的。这是因为我在知道排序算法和O(n)之前就已经完成了...而且你会注意到有两个数组......效率也非常低......

https://www.youtube.com/watch?v=r4NIDKS-zbM&feature=youtu.be

1 个答案:

答案 0 :(得分:1)

  • 从自动化测试结果正确性开始。
  • 了解增加输入(和输出)大小的运行时间(或比较和移动/交换次数)的增长顺序。
  • 说明方法/程序/单词评论的结果,以及如何进行代码评论的概念。
  • 编码排序。
  • 至少使用排序,反向排序和随机输入进行测试。
  • 决定处理重复值(包括稳定性)等细节,是否可以进行排序尝试等。(修改规格变更测试,代码更改时重新测试。)
  • 尝试用"传统"来描述这种方法。排序算法(很像选择排序,但是,hm,对称或双端或双向或......)。将关键词插入您最喜欢的搜索引擎,看看其他人做了什么以及如何做。
  • 基准"传统"排序实现。
  • 形成您对该方法重要性的看法。