Esempio n. 1
0
def getComentarios():
    if request.method == 'GET':
        # Crea un diccionario para mostrar los datos
        renderDict = {}
        # Instancia la estructura a usar
        estructura = encolador.enpilar()
        # Instancia una cola para los comentarios
        estructura_com = Stack()
        # Encola todos los comentarios
        # Inicia el contador
        s = time.time()
        for i in range(estructura.count()):
            pregunta = estructura.pop()
            estructura_com.push(pregunta.getComentariosPregunta())
        # Detiene el contador
        e = time.time()
        print("Datos enpiladoss en {}s".format(e - s))

        # Desencola los comentarios
        s = time.time()
        for i in range(estructura_com.count()):
            SLL_Comentarios = estructura_com.pop()
            for j in range(SLL_Comentarios.count()):
                comentario = SLL_Comentarios.pop()
                renderDict[comentario.getId()] = comentario.toJSON()
        # Detiene el contador
        e = time.time()
        print("10k datos desenpiladoss en {}s".format(e - s))
    return jsonify(renderDict)
Esempio n. 2
0
class TestStack(unittest.TestCase):
    def test_pop(self):
        self.new = Stack()
        self.new.push("2CBA")
        self.assertEqual(self.new.pop(), "2CBA")

    def test_count(self):
        self.new = Stack()
        self.new.push("1CBA")
        self.new.push("2CBA")
        self.assertEqual(self.new.count(), 2)

    def test_peek(self):
        self.new = Stack()
        self.new.push("1CBA")
        self.new.push("2CBA")
        self.assertEqual(self.new.peek(), "2CBA")
    def evaulate_postfix(self):
        """
        Vyhodnoceni postfix vyrazu
        """
        data = self.get_data() + " "

        stack = Stack()
        val = ""
        for item in data:
            if item == " ":
                if self.is_operation(val):
                    num1 = stack.pop()
                    num2 = stack.pop()
                    assert num1 is not None and num2 is not None
                    result = self.perform_operation(num2, num1, val)
                    stack.push(result)
                else:
                    stack.push(float(val))
                val = ""
            else:
                val += item
        result = stack.pop()
        assert result is not None and stack.count() == 0
        return result