Jetbrains IDEs are easy to learn and flexible to use. You can use jetbrains-toolbox to help you manage the update of following useful ides.
| tool | language |
|---|---|
| clion | for c++ |
| pycharm | for python |
| webstorm | for javascript |
| tool | functionality | links |
|---|---|---|
| gcc4.9+ | compile source codes with std=c++14 | |
| make | build codes with makefile | |
| cmake | generate makefile | cmake-tutorial |
- boost graph library, only requiring including headers, which use template-meta-programming. Adjacency list and compressed sparse row graph concept are used in this project.
configure as following in CMakeLists.txt to give gcc additional-search-path for header-files.
include_directories(${Boost_INCLUDE_DIRS})
- boost regex, requiring link of the related dynamic link library
used in ../src/util/graph_io_helper.h for graph input handling.
in root directory of this project
- first build the project to have executables
mkdir -p build
cd build
cmake ../src/
make -j- second run some executables on datasets
e.g, cis algorithm
enter build directory, then do as follows, where the first argument is ../small_datasets/collaboration_edges_input.csv
algorithm_demo/demo_cis ../small_datasets/collaboration_edges_input.csv