有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java有序插入链表

我必须编写一个按顺序插入字符串的程序,比如当我插入dog和cat时,不管我插入它们的顺序如何,它都应该返回cat,dog。 到现在为止,当我这样做的时候,它不是按顺序插入,而是像正常一样插入。我很确定我切换头部和电流的方法是有效的,因为之前,它会翻转我的输入,不管它是否应该翻转,如果它应该是猫-狗,它会返回狗-猫。无论出于什么原因,我的if语句几乎都会跳过它。任何提示都将不胜感激

public void insert(String s){
    head= new node(s,head);
    node current=head.getNext();
    if(current == null){
        current=head;
        while(current.getNext() != null){
            if(current.getData().compareTo(s)>0){
                current.setNext(head);
                head.setNext(current.getNext().getNext());
                head=current;
                current=head;
            }
            current= current.getNext();
        }
    }else{
        while(current.getNext() != null){
            if(current.getData().compareTo(s)>0){
                current.setNext(head);
                head.setNext(current.getNext().getNext());
                head=current;
                current=head;
            }
            current=current.getNext();
        }
    }
}

共 (0) 个答案