In the beginning of one's career startup is always the best choice.

Pros of joining startup:

1) You get to learn a lot.

2) You get to see things growing in front of you, you being a crucial part of growth.

3) In big companies you are part of a big team where your role is predefined and you need to follow lots of processes to make a change.

Pros of joining big company:

1) You don't have many responsibilities. So if you are planning for higher studies, startup may not be right choice.

2) You get to learn more about processes of software development which may not be there in startups.

thumb_up 9 thumb_down 1 flag 0

Map in C++ STL is implemented using a self balancing binary search tree (typically Red Black Tree).  This implementation ensures O(Log n) time complexity for search, insert and delete operations.

thumb_up 3 thumb_down 0 flag 0

Sorting algorithms can be divided in many ways.  Most common classifications is:

Comparison based : QuickSort, MergeSort, Insertion Sort, ...

Non-Comparison based : Counting Sort, Bucket Sort, ...