int arr[] = {1, 5, 8, 9, 6, 7, 3, 4, 2, 0}; int n = sizeof(arr)/sizeof(arr[0]); sort(arr, arr+n); //0 1 2 3 4 5 6 7 8 9
sort in descending order?
sort(arr, arr+n, greater<
int>()); //9 8 7 6 5 4 3 2 1 0
sort in particular order?
// A C++ program to demonstrate STL sort() using// our own comparator#includeusing namespace std;// An interval has start time and end timestruct Interval{ int start, end;};// Compares two intervals according to staring times.bool compareInterval(Interval i1, Interval i2){ return (i1.start < i2.start);}int main(){ Interval arr[] = { {6,8}, {1,9}, {2,4}, {4,7} }; int n = sizeof(arr)/sizeof(arr[0]); // sort the intervals in increasing order of // start time sort(arr, arr+n, compareInterval); cout << "Intervals sorted by start time : \n"; for (int i=0; i cout << "[" << arr[i].start << "," << arr[i].end << "] "; return 0;}Intervals sorted by start time : [1,9] [2,4] [4,7] [6,8]
------------
This searching only works when container is sorted.
vector<int> arr = {10, 15, 20, 25, 30, 35}; // using binary_search to check if 15 exists if (binary_search(arr.begin(), arr.end(), 15)) cout << "15 exists in vector"; else cout << "15 does not exist";
No comments:
Post a Comment