求教关于冒泡排序
我写了个程序,如下:
- C/C++ code
// 冒泡排序,根据ResData和CountArray数据对data进行冒泡排序,row是data的行数和ResData的列数。count是CountArray的行数void Sort_D_F(int **data, int **CountArray, double *ResData, int row, int count){ int temp[3] = {0, 0, 0}; // 临时变量 int i, j, k, t; static int m = 0; for(t=0; t<count; t++) { for(i=0; i<CountArray[t][1]-1; i++) { for(j=0; j<CountArray[t][1]-i-1; j++) { if((m+j) == row-1) break; //if(data[m][2] > data[m+1][2]) if(ResData[m+j] > ResData[m+j+1]) { for(k=0; k<3; k++) { temp[k] = data[m+j][k]; data[m+j][k] = data[m+j+1][k]; data[m+j+1][k] = temp[k]; } } } } m += CountArray[t][1]+1; cout << m << endl; }}data 数据如下[{1,88,1},{2,137,2},{3,34,3},{3,111,3},{3,149,3},{4,31,4},{4,59,4},{5,25,5},{5,38,5},{5,67,5},{5,106,5},{5,167,5}];ResData数据如下:{1,1, 0.878183, 0.634459, 0.697758, 0.771256,0.818767, 0.490358,0.491005,0.481679, 0.551321,0.470729};CountArray数据如下{{1,1},{2,1},{3,3},{4,2},{5,5}}用此例子: row = 12, count = 5要根据ResData数据,将data数据进行排序。ResData每一个元素的下标和data数据行下标对应。CountArray第一列记录data数据第三列种类,CountArray第二列记录第一列数据在data中出现的次数。我不知道那个地方错了,排序不成功。请高手赐教。
[解决办法]
来蹭个分
谢谢LZ
[解决办法]
有这种好事?can not believed it
[解决办法]
真的吗 接分
[解决办法]
[解决办法]
我也来蹭个分分。
[解决办法]
给分吗 谢谢LZ
[解决办法]
呵呵,试试
[解决办法]
我发现我还在10以内,所以无耻的等分了,哈哈
[解决办法]
就让我来结束这一切吧。。。。