here is the code. I get a segmentation fault every time run.
Code://Mergesort void mergesort(vector<string>& word_vector, int start, int stop) { int mid; if (start < stop) { mid=(start+stop/2); mergesort(word_vector, start, mid); mergesort(word_vector, mid+1, stop); merge(word_vector, start, mid, stop); } } void merge(vector<string>& word_vector, int start,int mid, int stop) { int i,j,k,na,nb; cout << start<< " " << mid << " "<< stop << endl; vector<string> vector_L; vector<string> vector_R; na = mid-start +1; nb = stop - mid; for (i = 1; i <= na; i++) { vector_L.push_back(word_vector[start+i-1]); } for (i = 1; i <= nb; i++) { vector_R.push_back(word_vector[mid+1]); } i = 1; j= 1; cout <<"Left Size is " << vector_L.size() << " Right Size is " << vector_R.size() << endl; for (k=start; k <= stop; k++) { cout <<"i is "<< i << " j is " << j <<" k is " << k << endl; if (strcmp(vector_L[i].c_str(),vector_R[j].c_str()) < 0) { word_vector[k] = vector_L[i]; i = i + 1; } else { word_vector[k] = vector_R[j]; j = j + 1; } } }



LinkBack URL
About LinkBacks



ut_of_range'