Re: [问题] c++将字串排序

楼主: MOONRAKER (㊣牛鹤鳗毛人)   2016-05-10 23:05:19
※ 引述《cchou0114 (嘻嘻)》之铭言:
: 要怎么把他的字首依照字典顺序排序呢
void verydumbsort(string ar[], int len) {
string arbuf[26][SIZE];
int arb_i[26] = { 0 };
for (int j=0; j<len; ++j) {
char initial = ar[j][0];
if (initial >= 'a') {
initial -= ('a' - 'A');
}
initial -= 65;
arbuf[initial][arb_i[initial]] = ar[j];
++arb_i[initial];
}
int ar_index = 0;
for (int m=0; m<26; ++m) {
for (int n=0; n<arb_i[m]; ++n) {
if (arbuf[m][n].length() > 0) {
ar[ar_index] = arbuf[m][n];
++ar_index;
}
}
}
}
你是说“字首”照字典顺序排嘛
那字首以下就随便了
可执行范例 - http://ideone.com/91wgu5
作者: WBTs (加权平衡树)   2016-05-10 23:10:00
bubble sort随便for夹for和if就可,你对他太好了,还帮他写好.
楼主: MOONRAKER (㊣牛鹤鳗毛人)   2016-05-11 13:33:00
很久没写吸加加 写一下确定还会写 而且要合乎要求嘛写一写才发现真的不行了 new用得乱七八糟 只好放弃

Links booklink

Contact Us: admin [ a t ] ucptt.com