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

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

作者: 逍遥白亦 | 来源:发表于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;
        }

    }

}

相关文章

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

    有序链表实现 代码实现

  • iOS 数据结构之链表

    iOS 数据结构之链表 iOS 数据结构之链表

  • 文章列表

    基本数据结构 栈 队列 双端队列 无序链表 有序链表 递归 递归 搜索与排序 搜索

  • 数据结构 | 其二 链表

    冰河winner - 数据结构之链表 2.1 单向链表 数据结构(一) 单链表的实现-JAVA 2.2 双端链表 ...

  • 2018-06-20

    二,LinkedHashMap详解 LinkedHashMap底层数据结构由链表和哈希表组成。由链表保证元素有序。...

  • redis3

    Redis有哪些数据结构?底层的编码有哪些?有序链表采用了哪些不同的编码? 数据结构1 简单动态字符串2 链表3 ...

  • 自己动手写数据结构之双向链表

    双向链表的实现 1 定义 双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接...

  • 自己动手写数据结构之单链表

    单链表实现 1 定义 单链表是一种链式存取的数据结构,用一组地址任意的存储单元存放线性表中的数据元素。链表中的数据...

  • 用Python实现常见数据结构(1)——有序单向链表

    链表是一种常用的数据结构,而有序单向链表则是一种特殊的链表,可以在插入新的元素后仍保持元素有序,其思想类似于插入排...

  • python数据结构教程 Day5

    python数据结构教程 Day5 本节重点: 有序表 链表实现list的算法分析 线性结构小结 一、有序表 1、...

网友评论

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

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