我一直在为学校做这个项目,当我看到说明书有点我注意不到时,我差点就完成了。我现在很沮丧,我会爱一个人来帮助......说真的,我距离废弃这个组合还有一步之遥。 以下是说明和示例:
输入数据文件并使用“insertionSort”算法在名为“sortNames()”的方法中对它们进行排序。然后取一组字符串并按字母顺序组织它们。在添加新项目时,请维护列表的排序顺序。应始终以维护列表的排序顺序的方式添加新项目。
数据文件是这个名称列表(只是像这样堆叠):
科尔
艾玛
斯潘塞
马修
卡特
罗伯特
扎卡里
康纳
基督教
布里克斯顿
Adam Loc
艾
迈克尔
特伦顿
杰克
达拉斯
威斯汀
乔纳森
康纳
普里亚
埃德蒙
扎卡里
Areli
康纳
贝弗利
我没注意到的部分说明就是这个(它在底部):
你不能使用Arrays.sort() 或Collections.sort()!
无论如何,这是提供的骨架代码:
import java.util.ArrayList;
import java.util.Collections;
import static java.lang.System.*;
class InsertionSort
{
private ArrayList<String> list;
public InsertionSort()
{
}
//modfiers
public void add( String word)
{
int loc = 0;
}
private int findInsertLocation( String word )
{
return -1;
}
public void remove(String word)
{
}
public String toString()
{
return "";
}
}
如果有人可以填写骷髅代码,我可以成为跑步者,所以我实际上可以说我做了一些工作。
我知道我听起来像个小吵闹的小伙子“噢,这太难了所以我会懒得让其他人去做”但我不是。我工作了大约一个半小时,现在只是加重了。我刚开始学习计算机科学,这是我的第一年,但我真的很喜欢各种各样的。请帮帮我。
谢谢,
Keelen
编辑:我的意思是我正在推销老师给我的东西。对不起,我错误地标记了它的骨架代码。我的问题是使用插入排序插入.dat文件。它的措辞方式让我相信它希望我对它进行排序并覆盖数据文件。所以代码只能在数据文件中工作,然后用排序版本覆盖它。这超出了我以前做过的任何事情,我之前的最大代码项目是制作一个石头剪刀游戏。不,它没有花费我一个半小时的空白代码,我说我做它的方式没有工作,所以我给了一个空白的石板。遗憾。答案 0 :(得分:0)
“但我真是个各种各样的废话”
你在这里做的不是帮助自己。让其他人为你做你的工作并不会让你变得更好。
开始学习插入排序的好地方是the Wikipedia article。但是因为你看起来很匆忙,我会在这里总结一下。
假设您从这个随机数组开始:
[ 4, 2, 5, 7, 3 ]
插入排序背后的一般思路是,您希望将数组拆分为两个部分 - 已排序部分和未排序部分。在每次迭代中,您选择未排序部分中的第一个元素,然后将>>插入到数组的已排序部分中的正确位置。
首先,你有这个,|
代表有序和未分类部分之间的分割,左边是有序部分:
[ | 4, 2, 5, 7, 3]
首先,取出未排序数组中未排序元素中的第一个元素,并将其移动到数组排序部分的正确位置。这很容易,因为数组中没有其他内容:
[ 4 | 2, 5, 7, 3 ]
然后你再说一遍:
[ 2, 4 | 5, 7, 3 ]
[ 2, 4, 5 | 7, 3 ]
[ 2, 4, 5, 7 | 3 ]
[ 2, 3, 4, 5, 7 | ]
现在你已经完成了!将其转换为代码不应该只采取一些循环,交换和if
语句。
这应该足以让你入门。如果您尝试实施某些内容并且存在特定的事情,请尝试再次发布此处。