                            graph.csr_out_edges());
 
     HornetGraph hornet_graph(hornet_init);
+	// Users can add the number of TopK vertices for the approximation
+	int           topK = graph.nV();
+     if(argc>2)
+        topK=atoi(argv[2]);
+ 
+    // Finding largest vertex degree
+    degree_t max_degree_vertex = hornet_graph.max_degree();
+    std::cout << "Max degree vextex is " << max_degree_vertex << std::endl;
 
-    // Finding largest vertex
-    degree_t max_degree_vertex = hornet_graph.max_degree_id();
-    std::cout << "Max degree vextex is " << max_degree_vertex << std::endl;
 
     KatzCentrality kcPostUpdate(hornet_graph, max_iterations, topK,
                                 max_degree_vertex);

    using namespace hornets_nest;
    using namespace timer;

    int max_iterations = 1000;
    int           topK = 100;

    GraphStd<vid_t, eoff_t> graph(UNDIRECTED);
    graph.read(argv[1], SORT | PRINT_INFO);

    HornetInit hornet_init(graph.nV(), graph.nE(),

    TM.stop();

    auto total_time = TM.duration();
    std::cout << "The number of iterations     : "
              << kcPostUpdate.get_iteration_count()
              << "\nTopK                       : " << topK 
              << "\nTotal time for KC          : " << total_time
              << "\nAverage time per iteartion : "
              << total_time /
