예제 #1
0
        void Practica1E()
        {
            Cola cola = new Cola();

            cola.InicializarCola();
            cola.Acolar(2);
            cola.Acolar(2);
            cola.Acolar(3);
            cola.Acolar(2);
            cola.Acolar(1);

            bool capicua = Cola.EsCapicuaReduced(cola);

            Cola cola2 = new Cola();

            cola2.InicializarCola();

            cola2.Acolar(1);
            cola2.Acolar(2);
            cola2.Acolar(3);
            cola2.Acolar(3);
            cola2.Acolar(2);
            cola2.Acolar(1);

            capicua = Cola.EsCapicuaReduced(cola2);
        }
예제 #2
0
        public static Cola InvertirCola(Cola cola)
        {
            Cola colaAux = cola;

            Cola a = new Cola();

            a.InicializarCola();

            int[] aux = new int[cola.Contar()];

            int i = 0;

            while (!colaAux.ColaVacia())
            {
                aux[i] = colaAux.Primero();
                i++;
                colaAux.Desacolar();
            }

            for (int j = aux.Length - 1; j >= 0; j--)
            {
                a.Acolar(aux[j]);
            }

            return(a);
        }
예제 #3
0
        public static bool EsCapicuaReduced(Cola cola)
        {
            for (int i = 0; i <= cola.Contar() / 2; i++)
            {
                if (cola.array[i] != cola.array[cola.Contar() - 1 - i])
                {
                    return(false);
                }
            }

            return(true);
        }
예제 #4
0
        public static bool SonInversas(Cola C1, Cola C2)
        {
            if (C1.Contar() != C2.Contar())
            {
                return(false);
            }

            for (int i = 0; i <= C1.Contar() - 1; i++)
            {
                if (C1.array[i] != C2.array[C1.Contar() - 1 - i])
                {
                    return(false);
                }
            }

            return(true);
        }
예제 #5
0
        public static Conjunto GenerarConjunto(Cola cola, Pila pila)
        {
            Conjunto conjunto = new Conjunto();

            conjunto.InicializarConjunto();

            for (int i = 0; i <= pila.Contar() - 1; i++)
            {
                conjunto.Agregar(pila.a[i]);
            }

            for (int i = 0; i <= cola.Contar() - 1; i++)
            {
                conjunto.Agregar(cola.array[i]);
            }

            return(conjunto);
        }
예제 #6
0
        static void Practica1F()
        {
            Cola cola = new Cola();

            cola.InicializarCola();

            cola.Acolar(2);
            cola.Acolar(2);
            cola.Acolar(3);
            cola.Acolar(2);
            cola.Acolar(1);

            Cola cola2 = new Cola();

            cola2.InicializarCola();

            cola2.Acolar(2);
            cola2.Acolar(2);
            cola2.Acolar(3);
            cola2.Acolar(2);
            cola2.Acolar(2);

            bool prueba = Cola.SonInversas(cola, cola2);
        }