0
我試圖排序使用氣泡sort.But鏈接列表,但我寫的算法不起作用。可以幫助我嗎?鏈接列表排序使用氣泡排序
還有一個鏈接類。
Link類
public class Link {
public int iData;
public String sData;
public Link next;
public Link(int id,String sd)
{
iData =id;
sData =sd;
next = null;
}
public void displayLink()
{
System.out.println(iData+""+sData);
}
}
LinkKist類包括排序算法。
public class LinkedList {
private Link first;
public void LinkList() {
first = null;
}
public void insertFirst(int idata, String sdata) {
Link nl1 = new Link(idata, sdata);
nl1.next = first;
first = nl1;
}
public void displayList() {
System.out.println("List : ");
Link current = first;
while (current != null) {
current.displayLink();
current = current.next;
}
System.out.println("");
}
public void sortll(){
Link current = first;
Link nextLink = first.next;
while(current.next != null){
while(nextLink.next != null)
if(nextLink.iData < current.iData){
Link temp = nextLink;
nextLink = current;
current = temp;
nextLink = nextLink.next;
current = current.next;
}
current = current.next;
}
}
}
測試應用程序。
public class LLtest {
public static void main(String[] args) {
LinkedList ll1 = new LinkedList();
ll1.insertFirst(11, "UWU0011");
ll1.insertFirst(3, "UWU0003");
ll1.insertFirst(1, "UWU0001");
ll1.insertFirst(4, "UWU0004");
ll1.insertFirst(5, "UWU0005");
ll1.insertFirst(6, "UWU0006");
ll1.insertFirst(7, "UWU0007");
ll1.insertFirst(10, "UWU0010");
ll1.insertFirst(9, "UWU0009");
ll1.insertFirst(2, "UWU0002");
ll1.insertFirst(8, "UWU0008");
ll1.sortll();
ll1.displayList();
}
}
任何人都可以請幫我?????
這裏有一個關於如何有用的鏈接調試小程序:http://ericlippert.com/2014/03/05/how-to-debug-small-programs/ –
你可以幫我解決這個問題? ??? –
你期望什麼樣的幫助不僅僅是別人爲你調試你的代碼? –