首页 > 代码库 > HD-ACM算法专攻系列(7)——排序
HD-ACM算法专攻系列(7)——排序
题目描述:
源码:
#include"iostream" #include"string" using namespace std; void Order(int *p, int n) { int tmp; if(n < 2)return; for(int i = 0; i < n - 1; i++) { for(int j = 0; j < n - i - 1; j++) { if(p[j] > p[j + 1]) { tmp = p[j]; p[j] = p[j + 1]; p[j + 1] = tmp; } } } } int main() { string str; int nums[501], count, start, len, num; bool ok; while(cin>>str) { count = 0; start = 0; len = str.length(); for(int i = 0; i < len; i++) { if(str[i] == ‘5‘) { start++; } else { break; } } num = 0; ok = true; for(int i = start; i < len; i++) { if(str[i] != ‘5‘) { ok = true; num = num * 10 + (str[i] - ‘0‘); } else { if(ok) { nums[count] = num; count++; num = 0; ok = false; } } } if(str[len - 1] != ‘5‘) { nums[count] = num; count++; } Order(nums, count); for(int i = 0; i < count; i++) { if(i > 0)cout<<" "; cout<<nums[i]; } cout<<endl; } return 0; }
HD-ACM算法专攻系列(7)——排序
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。