Resume Analyzer is a console-based C++ application developed as a Data Structures & Algorithms (DSA) project to automate the resume screening process. It reads multiple resume files, tokenizes their content, and ranks them based on matched skills and experience scores. By leveraging efficient data structures like max-heaps and hash maps, this system reduces manual effort, improves accuracy, and ensures fair candidate evaluation.
- Reads resumes dynamically from
.txt
files - Tokenizes and normalizes text for consistent analysis
- Matches resume keywords against user-defined skills
- Calculates experience scores based on keywords and institute weight
- Uses two max-heaps to:
- Rank resumes by matched skills
- Rank resumes by experience score
- Displays:
- Full resume content
- Best matched resume based on skills
- Top N resumes based on experience
- Language: C++
- Data Structures:
- Priority Queue (Max-Heap)
- Unordered Map
- Set
- Vector
- Text Processing:
- Tokenization
- Case normalization
- Cleaning special characters
- File Handling:
- Reads from external
.txt
files (e.g.,resume1.txt
,resume2.txt
, etc.) - Ensures proper error handling and validation
- Reads from external
- Prepare resumes: Place resume files named
resume1.txt
,resume2.txt
, ..., in thedata/
folder. - Compile the program: Use your preferred C++ compiler to compile
main.cpp
along with the other source files. For example: