示例#1
0
    public override void TestCode04()
    {
        code4 = "연결 리스트 직접 구현 - 데이터 추가와 삭제";

        D02_Room <int> node0 = data3_1.AddLast(101);

        data3_1.AddLast(102);
        D02_Room <int> node1 = data3_1.AddLast(103);

        data3_1.AddLast(104);
        D02_Room <int> node2 = data3_1.AddLast(105);

        data3_1.Remove(node0);
        data3_1.Remove(node1);
        data3_1.Remove(node2);
    }
示例#2
0
    public D02_Room <T> AddLast(T data)
    {
        D02_Room <T> newRoom = new D02_Room <T>();

        newRoom.data = data;

        if (first == null)
        {
            first = newRoom;
        }
        if (last != null)
        {
            last.next    = newRoom;
            newRoom.prev = last;
        }

        last = newRoom;
        count++;
        return(newRoom);
    }
示例#3
0
    public void Remove(D02_Room <T> room)
    {
        if (room != first)
        {
            room.prev.next = room.next;
        }
        else
        {
            first = room.next;
        }

        if (room != last)
        {
            room.next.prev = room.prev;
        }
        else
        {
            last = room.prev;
        }

        count--;
    }