void BubbleSort(ArrayT& a) { if (a.empty()) return; for (int i = 1; i < a.size()-1; ++i) { for (int j = a.size()-1; j >= i+1; --j) { if (a[j] < a[j-1]) { int tmp = a[j]; a[j] = a[j-1]; a[j-1] = tmp; } } } }
string arrayToString(ArrayT const & arr) { ostringstream oss; oss << '['; for (long i = 0; i < (long)arr.size(); ++i) { if (i > 0) oss << ", "; oss << arr[i]; } oss << ']'; return oss.str(); }
inline std::string array_str(const char * name, const ArrayT& array) { bool multiline = array.size() > width; std::stringstream ss; if (name) { ss << name << ": "; } ss << "["; long i=0; for (auto e : array) { if (i % width == 0 && multiline) ss << "\n "; ss << " " << e; i++; } ss << (multiline ? "\n" : " ") << "]"; return ss.str(); }
int main() { ArrayT a; a.push_back(3); a.push_back(41); a.push_back(52); a.push_back(26); a.push_back(38); a.push_back(57); a.push_back(9); a.push_back(49); BubbleSort(a); for (size_t i=0; i<a.size(); ++i) { std::cout << a.at(i) << std::endl; } return 0; }