• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

c++实现对输入数组进行快速排序的示例(推荐)

c++ 搞代码 4年前 (2022-01-06) 30次浏览 已收录 0个评论

下面小编就为大家带来一篇c++实现对输入数组进行快速排序的示例(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

废话不多说,直接上代码

 #include "stdafx.h" #include  #include  #include  using namespace std; void quickSort(vector &a, int, int); void swap(int &a, int&b); vector split(string s, string seperator); int main() { st<a style="color:transparent">来源gao($daima.com搞@代@#码(网</a>ring str; cout << "please input your array: " << endl; getline(cin, str); vector strs = split(str, " "); cout << "The original array is " << endl; for (unsigned int i = 0; i <strs.size(); i++) { cout << strs[i] << " "; } cout << endl; vector array(strs.size()); for (unsigned int i = 0; i <strs.size(); i++) { array[i] = atoi(strs[i].c_str()); } int len = array.size(); cout << "The ordered array is " << endl; quickSort(array, 0, len-1); for (int i = 0; i <len; i++) { cout << array[i] << " "; } cout << endl; system("pause"); return 0; } void quickSort(vector &a, int start, int base) { if (start >= base) { return; } int i = start, j = start; int temp = a[base]; for (;j<base;j++) { if (a[j] a[base]) { swap(a[i], a[base]); } quickSort(a, start, i - 1); quickSort(a, i + 1, base); } void swap(int &a, int&b) { if (a == b) { } else { a = a + b; b = a - b; a = a - b; } } vector split(string s, const string pattern) { string::size_type pos; vector result; s += pattern; unsigned int size = s.size(); for (unsigned int i = 0; i <size; i++) { pos = s.find(pattern, i); if (pos <size) { string str = s.substr(i, pos - i); if (!str.empty()){ result.push_back(str); } i = pos + pattern.size() - 1; } } return result; }

以上这篇c++实现对输入数组进行快速排序的示例(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持gaodaima搞代码网

以上就是c++实现对输入数组进行快速排序的示例(推荐)的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:c++实现对输入数组进行快速排序的示例(推荐)
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址