Пример #1
0
        static void PrintTrain(Locomotive train)
        {
            Write("\n");
            RailCar railCar = train.getFirstRailCar();

            Write("L");
            while (railCar != null)
            {
                Write($"-{railCar.toString()}");
                railCar = railCar.getNext();
            }
        }
Пример #2
0
        public void attachRailCar(RailCar newCar)
        {
            if (first == null)
            {
                first = newCar;
            }
            else
            {
                RailCar append = first;
                bool    insert = false;

                if (string.Compare(newCar.toString(), first.toString()) == -1)
                {
                    newCar.setNext(first);
                    first = newCar;
                }
                else
                {
                    while (append != null && !insert)
                    {
                        if (append.getNext() == null)
                        {
                            insert = true;
                            append.setNext(newCar);
                        }
                        else if (string.Compare(newCar.toString(), append.getNext().toString()) == -1)
                        {
                            insert = true;
                            newCar.setNext(append.getNext());
                            append.setNext(newCar);
                        }
                        append = append.getNext();
                    }
                }
            }
        }