Searching for MQC(A, a 鈭?#xA0;e) is a combinatorial optimization problem. A backtracking-based exact algorithm Backtracking-Search (BS) was proposed, however the time complexity of BS is O(n32n) (n = |A|). In this article, we propose the following algorithms for searching for MQC(A, a 鈭?#xA0;e) especially in complex DBNs where |A| is large. (i) A divide-and-conquer algorithm Divide-and-Conquer (DC) for dividing the problem of searching for MQC(A, a 鈭?#xA0;e) into sub-problems of searching for MQC(B1, a 鈭?#xA0;e), 鈥?#xA0;, MQC(Bm, a 鈭?#xA0;e), where Bi 鈯?#xA0;A(1 猢?#xA0;i 猢?#xA0;m, 1 猢?#xA0;m 猢?#xA0;|A|). (ii) A DC-based heuristic algorithm Heuristic-Search (HS) for searching for MQC(Bi, a 鈭?#xA0;e). The time complexity of HS is O(n6) (n = |Bi|). Empirical results show that, HS outperforms BS over a range of networks.