美文网首页
自己动手写数据结构之有序链表

自己动手写数据结构之有序链表

作者: 逍遥白亦 | 来源:发表于2020-12-19 12:10 被阅读0次

    有序链表实现

    代码实现

    public class SortedLinkedList {
    
        private Node first;
    
        public SortedLinkedList() {
            this.first = null;
        }
    
        public void insert(int data){
            Node newNode = new Node(data);
            Node previous = null;
            Node current = first;
    
            while (current !=null && data > current.data){
                previous = current;
                current = current.next;
            }
    
            //只有一个
            if (previous == null){
                first = newNode;
            }else {
                previous.next = newNode;
            }
            newNode.next = current;
        }
    
        public Node find(int data){
    
            Node current = first;
    
            while (current.data != data){
                if (current.next == null){
                    return null;
                }else {
                    current = current.next;
                }
            }
    
            return current;
    
        }
    
        public Node delete(int data){
            Node current = first;
            Node previous = first;
    
            current = find(data);
    
            if (current != null){
                if (current == first){
                    first = first.next;
                }else {
                    previous.next = current.next;
                }
            }
    
            return current;
        }
    
        class Node{
    
            private int data;
    
            private Node next;
    
            public Node(int data) {
                this.data = data;
            }
    
            @Override
            public String toString() {
                return "Node{" +
                        "data=" + data +
                        '}';
            }
        }
    
        public void disPlay(){
    
            Node temp = first;
    
            while (temp != null){
                System.out.println(temp.data);
                temp = temp.next;
            }
    
        }
    
    }
    

    相关文章

      网友评论

          本文标题:自己动手写数据结构之有序链表

          本文链接:https://www.haomeiwen.com/subject/gdaqnktx.html