Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

vector<string> or vector< vector<char> >?

I'm working on a Boggle game solver that would read lines of a text file (the board).

I've been going back and forth if I should use a vector of strings or a vector matrix of chars. I'm thinking the vector of chars would be easier to access as it would be myvec[y][x] where the vector of strings would require me to use the string.at() function.

I don't know which would have a better performance if I should parse each line in to the chars or leave the line as a string and access each char as needed. Any suggestions on which one I should do? Explaining why would be helpful.

like image 564
krizzo Avatar asked Dec 31 '25 19:12

krizzo


1 Answers

As commented, you can use operator[] on strings just like vectors or arrays.

Under proper optimisation, the performace will be about the same for vector<char> as for string - both are arrays under the hood, and in both cases operator[] will effectively be a structure member access and an indirect lookup. They even provide almost the same set of methods.

Choose whichever makes your code more readable/simple.

like image 92
Michael Slade Avatar answered Jan 02 '26 09:01

Michael Slade



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!