Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- using namespace std;
- vector <int> merge_sort(vector <int>& a, int x, int y){
- if (y-x<=1){
- return a;
- }
- int m=(x+y)/2;
- merge_sort (a, x, m);
- merge_sort (a, m, y);
- vector <int> merge(vector <int>& a, int x, int m, int y){
- vector <int> result(y-x);
- int i=x;
- int j=m;
- while (i<m && j<y){
- if (a[i]<=a[j]){
- result[i-x+j-m]=a[i];
- i++;
- }else{
- result[i-x+j-m]=a[j];
- j++;
- }
- }
- while (i<m){
- result[i-x+j-m]=a[i];
- i++;
- }while (j<y){
- result[i-x+j-m]=a[j];
- j++;
- }
- return result;
- }
- for (int i=0; i<y; i++){
- a[x+i]=result[i];
- }
- return a;
- }
- int main(){
- int n;
- cin>>n;
- int x=0;
- vector <int> a(n);
- for (int i=0; i<n; i++){
- cin>>a[i];
- }
- for (int i=0; i<n; i++){
- cout<<a[i];
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement