c++ - 无法在 C++ 中实现桶排序
问题描述
我需要帮助才能在 C++ 中获取 bucketSort 的功能代码;互联网上的所有代码都无法执行。
向量(桶)前面的这个操作符 [] 有什么作用?我知道它创建了 n 个存储桶,但我不确定它是否在主向量存储桶中创建了 n 个子向量!
此外,我无法弄清楚为什么代码不起作用,请帮助我。先感谢您。
#include <iostream>
#include <vector>
#include <algorithm
#include <iterator>
using namespace std;
void bucketSort (vector <int> &v){
int n;
v.resize(n)
vector<int> buckets[v];
for (int i=0; i<n; i++)
{
int correctIndex = n*v[i];
buckets[correctIndex].push_back(v[i]);
}
for (int i=0; i<n; i++)
{
sort(buckets[i].begin(), buckets[i].end());
}
int index = 0;
for (int i = 0; i < n; i++)
{
for (int j = 0; j < buckets[i].size(); j++)
arr[index++] = b[i][j];
}
}
解决方案
推荐阅读
- javascript - 全局变量 $_FILE 在对 Javascript 的 JSON 响应中将文件大小返回为 0
- apache - 我可以创建一个 Logstash 管道,它将 Apache Web 日志和来自 Mysql 数据库(基于日志)的查询作为输入?
- python - 如何从 Google Cloud Storage 存储桶加载保存在 joblib 文件中的模型
- javascript - React JSX 中的加法 - A + B
- batch-file - 将 IP 地址和主机名输出到配置文件
- python - 将 utf-8 写入文件但解析不正确
- reactjs - 无法使用 babel 和 react-bootstrap 与 Laravel 反应
- regex - [Regex]::Match() 在 If 内部和外部的行为不同(也使用 [Regex]::Match() )
- css - JavaFX - 根据切换状态在切换按钮上设置不同的悬停颜色
- javascript - Javascript画布绿色椭圆左侧和红色右侧