zoukankan      html  css  js  c++  java
  • 自己实现LinkedList

    public class MyLinkedList<E> {
    
        private Node first;
    
        private int size;
    
        public int size(){
            return size;
        }
    
        @Override
        public String toString() {
           if(size == 0){
               return  "[]";
           }else{
               StringBuilder sb = new StringBuilder("[");
               Node current = first;
               while (current != null){
                   sb.append(current.value).append(",");
                   current = current.next;
               }
               sb.replace(sb.length() - 1, sb.length(), "]");
               return sb.toString();
           }
        }
    
        public static void main(String[] args) {
            MyLinkedList list = new MyLinkedList();
            list.addFirst("python").addFirst("java").addFirst("hello").addFirst("php");
            System.out.println(list);
            list.removeFirst();
            System.out.println(list);
            System.out.println(list.contains("python"));
    
        }
        public E removeFirst(){
            if(size == 0){
                return  null;
            }else {
                Node<E>  temp  =  first;
                first = temp.next;
                size--;
                return  temp.value;
            }
        }
    
        public   boolean contains(E e){
            Node current = first;
            while(current != null){
                if(current.value == e ){
                    return true;
                }
                current = current.next;
            }
            return false;
        }
    
        public MyLinkedList addFirst(E e){
            Node newNode = new Node(e);
            newNode.next = first;
            first = newNode;
            size++;
            return this;
        }
    
        private  static  class  Node<E>{
            private E value;
            private Node next;
    
            Node(E value){
                this.value = value;
            }
    
            @Override
            public String toString() {
                return  value == null?"null":value+"";
            }
        }
    }
  • 相关阅读:
    标准MIDI文件格式
    David's MIDI Spec
    国庆长假好读书
    vim用法
    ,非你莫属,
    子宫的满足,睡觉前,
    在哪里,
    黑条,
    下单 返回的字段,
    机会啊,游戏啊,转吧,
  • 原文地址:https://www.cnblogs.com/moris5013/p/12040389.html
Copyright © 2011-2022 走看看