His primary research interests are in computer algorithms and their applications. He has published more than 150 publications in a broad range of research areas, including algorithms for computational finance and economics, nano technology (self-assembly), computational biology, data security, graph theory, parallel computing, and combinatorial optimization. He is a dedicated teacher. In addition to teaching a variety of courses in algorithms, he enjoys teaching numerical analysis and mathematics.