0

我一直在尝试对双链接列表进行冒泡排序,并且我在互联网上阅读以使其与单个链接列表一起使用会更容易,所以我尝试了,这是我的代码

public void bubbleSort()
    {
        StudentNode n;
        boolean isSorted=false;

        for(int i=lenght-1; i>1 && isSorted==false; i--)
        {            
            for(int j=0; j<i; j++)
            {
                n=L.head;
                isSorted=true;
                for(int k=0; k n.next.data)
                {
                    isSorted=false;
                    swap(n, n.next);
                }
            }
        }
    }

    public void swap(StudentNode N1, StudentNode N2)
    {
        int temp=N1.data;
        N1.data=N2.data;
        N2.data=temp;

    }

我将如何更改它以使用双链表?

4

2 回答 2

0

如果您只更改每个节点的内容(数据),而不移动节点本身,我看不出有任何更改任何内容的理由。

于 2012-01-12T10:52:10.047 回答
0

从您的实现的角度来看,它是否是双向链表并不重要,至少对于排序(冒泡)部分来说,至少因为您只是更改内容而不是指针。

于 2012-01-12T10:54:23.477 回答