我想我对选择排序有基本的想法,但由于某种原因它不起作用,我不知道为什么?有人知道这里有什么问题吗?
几点建议:
.getValue() 只返回节点中的对象,我使用的是整数。
Node tempNode = new Node(null,null,node.getValue()),第一个 null 用于上一个,第二个 null 用于下一个,第三个只是设置节点中的对象,在这种情况下为整数。
我的输入是:9 5 8 6 10 4
我的输出是这样的。由于某种原因,它一遍又一遍地设置 4:4 5 5 4 4 4
public void SelectionSort()
{
Node<T> node2;
Comparable temp;
Node<T> Nodemin;
for(Node<T> node = front;node != null; node = node.getNext())
{
Nodemin = node;
for(node2 = node.getNext();node2 != null; node2 = node2.getNext())
{
temp = node.getValue();
if(temp.compareTo(node2.getValue()) > 0)
{
Nodemin.setValue(node2.getValue());
}
Nodemin = Nodemin.getNext();
}
System.out.println(Nodemin.getValue());
Node<T> tempNode = new Node(null,null,node.getValue());
node.setValue(Nodemin.getValue());
Nodemin.setValue(tempNode.getValue());
}
}
慕桂英3389331
相关分类