Beispiel #1
0
def main() -> None:
    print("Podaj pierwszy ciąg:")
    string1 = input()

    print("Podaj drugi ciąg:")
    string2 = input()

    matrix = Matrix(string1, string2)
    print(f"Najdłuższy wspólny podciąg: {matrix.right_bottom}")
    print(f"LCS: {matrix.lcs}")
Beispiel #2
0
    def _gen_random_matrix(self, n_rows, n_colums):
        """Generate a n_rows * n_columns matrix with random numbers.
        Arguments:
            n_rows {int} -- The number of rows.
            n_colums {int} -- The number of columns.
        Returns:
            Matrix
        """

        data = [[random() for _ in range(n_colums)] for _ in range(n_rows)]
        return Matrix(data)
Beispiel #3
0
    def _items_mul_ratings(self, items, ratings):
        """Multiply a dense matrix(item matrix) with sparse matrix (rating matrix).
        The result(users) is a k * m matrix, m stands for number of user_ids.
        Arguments:
            items {Matrix} -- k * n matrix, n stands for number of item_ids.
            ratings {dict} -- The items ratings by users.
            {user_id: {item_id: rating}}
        Returns:
            Matrix -- User matrix.
        """
        def f(items_row, user_id):
            item_ids = iter(ratings[user_id].keys())
            scores = iter(ratings[user_id].values())
            col_nos = map(lambda x: self.item_ids_dict[x], item_ids)
            _items_row = map(lambda x: items_row[x], col_nos)
            return sum(a * b for a, b in zip(_items_row, scores))

        ret = [[f(items_row, user_id) for user_id in self.user_ids]
               for items_row in items.data]
        return Matrix(ret)
    def handle(self, *args, **options):

        m = Matrix()
        m.pantsMatrixToCsv()

        self.stdout.write(self.style.SUCCESS(f"All tops are added in matrix!"))