8 ms·
One nitpick (and this applies to almost every site of this genre, i.e. geeksforgeeks, hackerrank, etc.): The code listed as "C++" is essentially C with ostream
by quinnftw 9y ago
One nitpick (and this applies to almost every site of this genre, i.e. geeksforgeeks, hackerrank, etc.):
The code listed as "C++" is essentially C with ostreams. If I were interviewing someone and they claimed to know C++, and then used "sizeof(A) / sizeof(A[0])" to get the size of an array, I'd question how much C++ they actually knew. I understand that the focus here is mainly on problem solving and not language specific patterns, but when you advertise the site as a coding interview helper I think that the solution code should reflect that which should be written in an actual interview.
- coder007 9y agoHere's refined list using STL if you like - http://www.techiedelight.com/data-structures-and-algorithms-interview-questions-stl/ http://www.techiedelight.com/data-structures-and-algorithms-...
- coder007 9y agoSo you prefer to use std::array over C arrays?
- user5994461 9y agostd::vector What do you think std:array are?
- lossolo 9y agostd::array is stack allocated array with known size compile time. std::vector is dynamically allocated array (on heap). So C array equivalent = std::array, not std::vector.
- user5994461 9y agoThe point of the parent was to write C++ code the C++ way. Most arrays in real programs should be std::vector. Imitating C arrays with std::array is the perfect example of bastardized C/C++ code.
- lossolo 9y agoUsing std::array is writing code C++ way. If you know size of the array compile time and you know it will fit the stack then there is no reason to use std::vector.
- coder007 9y agoI know, just a class version of the C-array but std::vectors has lower performance. I believe that std::array or C array are good enough for problems with non-dynamic input.
- RandomOpinion 9y ago> If I were interviewing someone and they claimed to know C++, and then used "sizeof(A) / sizeof(A[0])" to get the size of an array, I'd question how much C++ they actually knew. Or they've spent a lot of time in embedded systems development. Many of us write rather C-ish C++ because of the limitations of older compilers and the age of the code bases.
- quinnftw 9y agoGenuine curiosity because I don't have a whole lot of experience with embedded systems: Why not just use C then? Either way I would argue that using sizeof in that way is a sketchy practise.
- huherto 9y agoC++ is a large language that can be used in many different ways. People adopt a subset that is sensible for them. If you are interviewing C++ programmers, you should be aware of it.