This work discusses the problem of generating association rules from a set of transactions in a relational database, taking performance and accuracy of found results as the essential aspects for comparing association mining algorithms. We do a critical analysis of two previously existing methods, Apriori and FP-growth, emphasizing their strengths and weaknesses; and based on this analysis, we propose an algorithm called Matrix Apriori combining the best features of both. Matrix Apriori utilizes simple structures such as matrices and vectors in the process of generating frequent patterns, and it also minimizes the number of candidate sets, thus achieving a more efficient computation than Apriori and FP-growth. The proposed algorithm can be easily extended to incorporate multiple minimal support defined by the user with the aim of improving method efficacy. KEYWORDS Data Mining, Databases, Association Rules, Frequent Patterns.