quicksort

Run Settings
LanguageC++
Language Version
Run Command
#include<iostream> #include<vector> #include<algorithm> using namespace std; void inspect(vector<int> xs) { for(int x : (xs)) { cout << x << ", "; } cout << endl; } vector<int> quicksort(vector<int> list) { if(list.size() < 2) return list; vector<int> xs{list.at(0)}, ys; for_each(++list.begin(), list.end(), [&](int elem) {(elem < list.at(0) ? xs : ys).insert((elem < list.at(0) ? xs : ys).begin(), elem);}); auto rs = quicksort(xs), ts = quicksort(ys); rs.insert(rs.end(), ts.begin(), ts.end()); return rs; } int main(int argc, char** args) { vector<int> xs {2,3,1,2,5,6,9,8,1,2,3,1}; inspect(quicksort(xs)); return 0; }
Editor Settings
Theme
Key bindings
Full width
Lines